我已经多次遇到这个问题,解决方法是在html上声明img时添加宽度和高度,如下所示:
<img src="outside.jpg" width="375px" height="375px">
但是,如果我按下面的方式做,它将不尊重父母
<div class="imgBox">
<img src="outside.jpg">
</div>
CSS父母司
.imgBox{
height: 375px;
width: 375px;
border: 1px solid red;
margin-right: 20px;
}
为什么会发生这种事?为什么img忽略了他们的父母的大小?
发布于 2017-08-09 01:02:28
这是一个HTML/CSS问题,孩子的大小不是由父母的大小来定义的。这是由于默认值的高度和宽度。在CSS中,高度和宽度的默认值是:
img{
height: auto;
width: auto;
}
auto
让浏览器计算高度,所以这不是最好的方法。
要获得更清晰的代码,请使用height: inherit;
和width width: inherit;
,它允许子元素从其父元素继承此属性。
发布于 2017-08-09 00:47:37
如果不设置不同的大小,则图像元素始终具有显示图像的大小。
添加以下css:
.imgBox img {
width: 100%;
height: auto;
display: block;
}
发布于 2017-08-09 00:48:55
.imgBox img {
max-width: 100%;
max-height: 100%;
}
因此,img
永远不会比它的父级大。
https://stackoverflow.com/questions/45585733
复制相似问题