记录一次弹性盒子问题的解决方案,不一定具有普适性,仅供参考
需求
实现垂直弹性盒子,满足其中一个子元素给定高度,另一个子元素自动填充
问题
自动填充的子元素由于未设置高度,将被其内容支撑,直至超出父容器
解决方案
给该元素设置高度初始值例如:height: 0;
示例代码
<div class="container">
<div class="fix"></div>
<div class="flex">
<div class="content"></div>
</div>
</div>
.container {
width: 300px;
height: 300px;
border: solid 1px red;
display: flex;
flex-direction: column;
}
.fix {
height: 150px;
background-color: LemonChiffon;
}
.flex {
flex: 1;
background-color: pink;
height: 0; /* 给定初始高度 */
}
.content {
width: 50%;
height: 200px;
background-color: lightgray;
}