标题说明了大部分内容。
我的html:
<div class="wrap">
<div class="s-inner">
<figure>
<img>
</figure>
</div>
</div>
CSS:
.wrap{
max-width:500px;
max-height:200px;
background:red;
}
.s-inner{
position: relative;
margin: inherit;
padding:inherit;
display: -webkit-flex;
display: flex;
max-height: 100%;
max-width: 100%;
box-sizing:inherit;
margin:auto;
}
/* Inside */
.s-inner > figure{
display: block;
margin: 0 auto 0 auto;
box-sizing: border-box;
}
.s-inner > figure > img{
box-sizing: border-box;
max-width: 100%;
max-height: 100%;
}
如果检查.wrap div,您会注意到图像弹出并且大于div,如何固定图像以缩放.wrap div大小。Fiddle
最佳答案
当您拥有的图像大于除法..图像无法容纳在其中时。因此您还必须为图像设置宽度和高度
.s-inner > figure > img {
height: 196px;
box-sizing: border-box;
max-width: 100%;
max-height: 100%;
width: 500px;
}
或回应方式
.s-inner > figure > img {
height: 100%;
box-sizing: border-box;
max-width: 100%;
max-height: 100%;
width: 100%;
}