申明: 本文参考 结一老师的文章 css中如何做到容器按比例缩放
核心思想:
给目标元素设置一个容器,设置高度为0,用垂直padding(百分比)来撑开高度,因为padding设置百分比时是基于容器的width属性的,我们再给目标元素设置绝对定位和100%宽高即可。
实现一个16:9的视频

demo代码如下:
<div class="wrap"> <div class="left"> <div class="inner"> <img src="left.jpg" alt=""> </div> </div> <div class="right"> <div class="top"> <img src="right-t.jpg" alt=""> </div> <div class="bottom"> <img src="right-b.jpg" alt=""> </div> </div> </div>
.wrap{
overflow: hidden;
background-color: #efefef;
}
.left, .right{
float: left;
width: 50%;
}
.left > .inner{
position: relative;
padding-top: 100%;
}
.left img{
position: absolute;
height: 100%;
width: 100%;
left: 0;
top: 0;
vertical-align: middle;
}
.right > .top{
position: relative;
padding-top: 67%;
}
.right > .bottom{
position: relative;
padding-top: 33%;
}
.right img{
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0; vertical-align: middle;}
来源:https://www.cnblogs.com/walle2/p/4894190.html