我的问题是,视频始终会在侧面或顶部/底部出现黑条,具体取决于屏幕尺寸。
任何想法如何始终保持全屏显示而不显示烦人的黑条?而不使用插件。
这是我的标记:
<div id="full-bg">
<div class="box iframe-box" width="1280" height="800">
<iframe src="http://player.vimeo.com/video/67794477?title=0&byline=0&portrait=0&color=0fb0d4" width="1280" height="720" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe>
</div>
</div>
#full-bg{
width: 100%;
height: 100%;
img{
display: none;
}
.iframe-box{
width: 100%;
height: 100%;
position: absolute;
background: url(../img/fittobox.png);
left: 0 !important;
top: 0 !important;
iframe{
width: 100%;
height: 100%;
}
}
}
最佳答案
尝试添加到CSS
.iframe-box {
max-width: 1280px; /* video width */
max-height: 720px; /* video height */
}
这意味着
width: 100%; height: 100%
将使元素尽可能扩大,直到分别达到720px
或1280px
的最大高度或宽度。如果您正在查看的屏幕具有更高的分辨率,则该节点将停止扩展,并且不会出现黑色边框。
此外,afaik以下内容不是有效的CSS,您使用的是库还是其他东西?
#full-bg {
.iframe-box {
foo: bar;
}
}
接受答案后进行编辑:我只是想到了一种完全不同的方法来实现此目的,但这需要您更改很多CSS
.fittobox { /* give fit to box an aspect ratio */
display: inline-block; /* let it be styled thusly */
padding: 0; /* get rid of pre-styling */
margin: 0;
width: 100%; /* take up full width available */
padding-top: 56.25%; /* give aspect ratio of 16:9; "720 / 1280 = 0.5625" */
height: 0px; /* don't want it to expand beyond padding */
position: relative; /* allow for absolute positioning of child elements */
}
.fittobox > iframe {
position: absolute; /* expand to fill */
top: 0px;
left: 0px;
right: 0px;
bottom: 0px;
}