gpt4 book ai didi

css - 将子 div 最大高度与父 div 最大高度匹配

转载 作者:行者123 更新时间:2023-11-28 10:14:34 25 4
gpt4 key购买 nike

我有下面的代码,我不想修改 wrap control 的 max-height。

我希望有一种方法可以将内容高度与换行高度相匹配,这样我就可以滚动列表并保持标题不变。

<div class='wrap'>
<div class='content'>
<div class="header">
<h1>Header</h1>
</div>
<div class="list">
<ul>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
</ul>
</div>
</div>
</div>


h1
{
background:green;
}

.wrap
{
max-height:200px;
overflow-y:scroll;
background:blue;
}
.content
{
background:red;
}

http://jsfiddle.net/jz89u91s/

最佳答案

这可以使用 flexbox 来完成。在下面的示例中,请将 .wrap div 的 height 更改为 0 到 200px 之间的任意数字,您可以看到内容会动态调整到新的高度.wrap.

实例:

h1
{
background:green;
}

.wrap
{
display: flex;
flex-direction: column;
height: 150px;
max-height:200px;
background:blue;
}
.content
{
background:red;
flex-grow: 1;
display: flex;
flex-direction: column;
}
.list {
overflow-y:scroll;
flex-grow: 1;
flex-basis: 0;
}
<div class='wrap'>
<div class='content'>
<div class="header">
<h1>Header</h1>
</div>
<div class="list">
<ul>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
<li>item</li>
</ul>
</div>
</div>
</div>

关于css - 将子 div 最大高度与父 div 最大高度匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31898682/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com