在嵌套div中,期望横向展示,一个div的高度会动态增加,另一个div期望获取到父div的高度,但设置height为100%不生效,给出解决方案
时间: 2023-11-25 08:08:47 浏览: 101
可以使用flex布局来解决这个问题,将父div设置为flex容器,子div的高度设置为100%,就可以获取到父div动态变化后的高度了。同时,需要将flex容器的flex-wrap属性设置为wrap,这样子元素就能够自动换行了。
HTML代码:
```
<div class="parent">
<div class="child1"></div>
<div class="child2"></div>
</div>
```
CSS代码:
```
.parent {
display: flex;
flex-wrap: wrap;
}
.child1 {
height: 100%;
flex: 0 0 auto;
}
.child2 {
flex: 1 0 auto;
}
```
这里将父div设置为flex容器,并将子div的高度设置为100%。同时,将另一个子div的flex属性设置为1,这样它就会占据剩余的空间,达到期望横向展示的效果。需要注意的是,为了避免子元素被挤压变形,子元素的flex属性中需要设置第一个值为0,表示不可压缩,第二个值为0,表示不可伸展,第三个值为auto,表示初始宽度为自适应宽度。
阅读全文