+
95
-

回答

三种方式

第一、height + padding-bottom

<!DOCTYPE html>
<html>

<head>
<title>height + padding-bottom</title>
<style type="text/css">
.box{
width: 50%;
height: 0;
padding-bottom: 30%;
/*宽高比为5:3*/
background: url(//repo.bfw.wiki/bfwrepo/image/5d6539385ad28.png);
background-size: cover;
border: 1px solid red;
}
</style>
</head>

<body>
<div class="box"></div>
</body>

</html>

第二、height:auto

<!DOCTYPE html>
<html>

<head>

<style type="text/css">
.box{
width: 50%;
height: auto;
}
img{
width: 100%;
height: auto;
}
</style>
</head>

<body>
<div class="box">
<img src="//repo.bfw.wiki/bfwrepo/image/5d6539385ad28.png">
</div>

</body>

</html>

第三:aspect-ratio

这个W3C还在起草阶段,相信以后会出现在css中的。

网友回复

我知道答案,我要回答