我想知道如何使视频或div固定在某个位置,而它始终是浏览器窗口的大小。这就是我想要的。
它们的“背景”包含视频,并且如果拖动浏览器窗口的大小,您会注意到它始终会调整视频的大小。这就是我要做的。
这是我的代码:
#menuContainer{
width:650px;
height:50px;
position:relative;
z-index:3;
margin-top:0;
margin-right:auto;
margin-bottom:0;
margin-left:auto;
background-color:rgb(183, 52, 178);
}
#menuLogo2{
height:50px;
width:126px;
}
#menuDevide1{
width:1px;
height:45px;
background-color:black;
position:relative;
top:-47.5px;
left:131px;
margin-top:auto;
margin-right:0;
margin-bottom:auto;
margin-left:0;
}
#menuDevide2{
width:1px;
height:45px;
background-color:black;
position:relative;
top:-119.5px;
left:260px;
margin-top:auto;
margin-right:0;
margin-bottom:auto;
margin-left:0;
}
#menuDevide3{
width:1px;
height:45px;
background-color:black;
position:relative;
top:-191.5px;
left:391px;
margin-top:auto;
margin-right:0;
margin-bottom:auto;
margin-left:0;
}
#menuDevide4{
width:1px;
height:45px;
background-color:black;
position:relative;
top:-263.5px;
left:520px;
margin-top:auto;
margin-right:0;
margin-bottom:auto;
margin-left:0;
}
#menuBottomline{
width:100%;
height:1px;
background-color:black;
position:absolute;
top:70px;
left:0px
}
#headerBG{
position:absolute;
top:0px;
left:0px;
z-index:2;
background-color:#ffffff;
height:70px;
width:100%;
}
.menuClick{
color:#000000;
text-decoration:none;
font-family: "Open Sans", Arial, sans-serif;
font-size:20px;;
}
.menuClick:hover{
color:#999999;
}
#menuPortfolio1{
position:relative;
top:-83px;
left:133px;
width:126;
text-align:center;
}
#menuServices1{
position:relative;
top:-155px;
left:263px;
width:126;
text-align:center;
}
#menuProcess1{
position:relative;
top:-227px;
left:393px;
width:126;
text-align:center;
}
#menuContact1{
position:relative;
top:-299px;
left:522px;
width:126;
text-align:center;
}
#mainOverlapWrap{
z-index:1;
position:relative;
width:100%;
height:100%;
}
#video1{
position:absolute;
top:71px;
left:0px;
min-width:1%;
width:100%;
height:100%;
}
#mainOverlay{
position:absolute;
top:0px;
left: 0px;
heightx:100%;
height:100%;
background-color: rgba(0,0,0,0.3);
}
或者,您可以签出此JSfiddle。
请注意,我正在使用他们的视频作为占位符。我的目的不是窃取他们的作品。
解决了主要问题之后的问题
调整浏览器大小时,我会在右侧看到非常小的灰色边缘。当我向左调整大小时,它往往会出现,但当向右调整大小时,它会消失。这张照片显示了我的意思。JSfiddle可以在这里找到。希望您能够解决此问题!
也许最好将代码复制到JSfiddle中,然后将其放入计算机中的文件中。整个事情在JSfiddle中看起来有点怪异,但在浏览器中却不然。
的HTML
<div class="wrapper">
<div class="h_iframe">
<iframe src="//www.youtube.com/embed/9KunP3sZyI0" frameborder="0" allowfullscreen></iframe>
</div>
</div>
的CSS
html,body {height:100%; margin:0;}
.h_iframe iframe {position:absolute;top:0;left:0;width:100%; height:100%;}
所以我们在这里寻找标签
的HTML
<div class="wrapper">
<video class="videoInsert">
<source src="http://www.w3schools.com/html/movie.mp4" type="video/mp4">
<source src="movie.ogg" type="video/ogg">
Your browser does not support the video tag.
</video>
</div>
的CSS
.videoInsert {
position: absolute;
right: 0;
bottom: 0;
min-width: 100%;
min-height: 100%;
width: auto;
height: auto;
z-index: -100;
background-size: cover;
overflow: hidden;
}
因此,现在我们需要使用jQuery。
的HTML
<div id="video-viewport">
<video autoplay preload width="640" height="360">
<source src="https://s3.amazonaws.com/whiteboard.is/videos/bg-loop-new.mp4" />
</video>
</div>
的CSS
#video-viewport {
position: absolute;
top: 0;
left:0;
overflow: hidden;
z-index: -1; /* for accessing the video by click */
}
body{
margin:0;
}
js
var min_w = 300; // minimum video width allowed
var vid_w_orig; // original video dimensions
var vid_h_orig;
jQuery(function() { // runs after DOM has loaded
vid_w_orig = parseInt(jQuery('video').attr('width'));
vid_h_orig = parseInt(jQuery('video').attr('height'));
$('#debug').append("<p>DOM loaded</p>");
jQuery(window).resize(function () { resizeToCover(); });
jQuery(window).trigger('resize');
});
function resizeToCover() {
// set the video viewport to the window size
jQuery('#video-viewport').width(jQuery(window).width());
jQuery('#video-viewport').height(jQuery(window).height());
// use largest scale factor of horizontal/vertical
var scale_h = jQuery(window).width() / vid_w_orig;
var scale_v = jQuery(window).height() / vid_h_orig;
var scale = scale_h > scale_v ? scale_h : scale_v;
// don't allow scaled width < minimum video width
if (scale * vid_w_orig < min_w) {scale = min_w / vid_w_orig;};
// now scale the video
jQuery('video').width(scale * vid_w_orig);
jQuery('video').height(scale * vid_h_orig);
// and center it by scrolling the video viewport
jQuery('#video-viewport').scrollLeft((jQuery('video').width() - jQuery(window).width()) / 2);
jQuery('#video-viewport').scrollTop((jQuery('video').height() - jQuery(window).height()) / 2);
};
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句