我有一个弹性容器,其中包含一个 img
弹性项目。
我希望这个 img
忽略其固有高度 (90px),以便高度可以缩小以匹配兄弟弹性项目的高度(根据默认的 align-items: stretch
样式)。
.container {
border: 1px solid;
display: flex;
}
.item {
border: 1px solid;
}
.content {
width: 200px;
height: 50px;
background-color: hotPink;
}
<div class="container">
<img class="item" src="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRu-3yBSd2b6JCOMcGVSOFf8X49QB3Ik-OI87gKEMwWLrdJxP5qOErmZQ">
<div class="item">
<div class="content"></div>
</div>
</div>
img
替换为 div
,就能看到期望的行为:
.container {
border: 1px solid;
display: flex;
}
.item {
border: 1px solid;
}
.dynamicHeightContent {
width: 120px;
height: 100%;
background-color: green;
}
.content {
width: 200px;
height: 50px;
background-color: hotPink;
}
<div class="container">
<div class="item">
<div class="dynamicHeightContent"></div>
</div>
<div class="item">
<div class="content"></div>
</div>
</div>
我尝试了在 img
上使用 min-height: 0
,但没有效果。
img
有什么特殊的行为,而div
没有?- 我们如何取消
img
的特殊行为,使其像其他弹性项(如div
)一样行为?如果没有办法取消,是否有推荐的解决方案?
请注意,虽然 img
不会缩小其高度,但它似乎会增加:
.container {
border: 1px solid;
display: flex;
}
.item {
border: 1px solid;
}
.content {
width: 200px;
height: 300px;
background-color: hotPink;
}
<div class="container">
<img class="item" src="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRu-3yBSd2b6JCOMcGVSOFf8X49QB3Ik-OI87gKEMwWLrdJxP5qOErmZQ">
<div class="item">
<div class="content"></div>
</div>
</div>
div
中并观察差异... - kukkuz