【发布时间】:2016-07-15 03:44:55
【问题描述】:
在一个简单的应用程序中,我嵌入了一个视频;图像比例为 630/315:
...
.flex-x{
display:flex;
flex-direction:row;
height:200px;
}
.flex-x iframe{
display: 1 1 auto;
}
...
<div class="flex-x">
<iframe width="560" height="315" src="..." />
<div>
问题是 iframe 按预期增长和缩小,但只有一个轴,没有保持纵横比。
有什么方法可以增加/缩小 x 和 y,保持纵横比?使用padding-bottom: 56.25%; (315/560) 修复当“宽度”减小到保持比率所需的以下时。
padding的宽度或高度都可以,但只有一个,所以限制max-width不是一个好的选择。
看起来 flex 仅在一个 flex-direction (行或列)中发生变化。
【问题讨论】:
-
它应该可以工作,请注意将高度重置为自动,正确关闭标签(iframe)并使用元素(如根据您的比率示例设置高度的伪元素:codepen.io/anon/pen/RagJjg 现在您的问题很短,如果是单个 iframe ,那么 flex 可能不是真正需要的......
-
这是简化版:页面非常复杂,有菜单和其他一些东西。是且必须 100% 符合 html5。谢谢。
-
不知道你为什么被否决,似乎我之前的评论似乎没有用,所以我猜还有其他原因。注意:没有人投票结束您的问题。不过,我认为这有点太笼统了 :) 但是你得到了答案