【发布时间】:2014-10-29 11:25:39
【问题描述】:
萨斯迈斯特here
如果元素的尺寸是使用intrinsic ratio 定义的:
萨斯:
body,
html,
.Wrapper
{
width:100%;
height: 100%;
}
.VideoContainer
{
position: relative;
max-width: 100%;
height: 0;
overflow: hidden;
&.Sixteen-Nine {
padding-bottom: 56.25%;
}
&.Four-Three {
padding-bottom: 75%;
}
}
.VideoContainer iframe,
.VideoContainer object,
.VideoContainer embed
{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
HTML:
<div class="Wrapper">
<div class="VideoContainer Vimeo Sixteen-Nine">
<iframe src="http://player.vimeo.com/video/109777141?byline=0&portrait=0&badge=0&color=090909" class="js-only" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen=""></iframe>
</div>
</div>
有什么方法可以包含它,以便它调整到其容器的高度?
当前它会在保持其纵横比的同时调整其容器的宽度,但是,即使使用定义了明确高度的包装器,如果包装器的宽度与其高度相比大于其高度,它也会溢出容器纵横比。
我需要支持 IE9+,我不想使用 JavaScript
【问题讨论】:
-
请出示您的 html。
-
@JeremyHolovacs 添加了 HTML。
-
抱歉,我很难理解这里的行为,但是您是否尝试在
.VideoContainer iframe元素中添加display: block;?我会尝试这样做,并摆脱width: 100%;元素。除此之外,也许屏幕截图会有所帮助? -
@JeremyHolovacs 我添加了一个指向 Sassmeister 的链接,这样您就可以看到它的运行情况。我还添加了指向 A List Apart 关于内在比率的文章的链接。
标签: html css layout sass intrinsic-ratio