【发布时间】:2022-01-17 05:57:30
【问题描述】:
从 Fiddle 考虑以下 HTML/CSS
* {
box-sizing: border-box;
}
html,
body {
height: 100%;
margin: 0;
}
main {
display: flex;
flex-direction: column;
height: 100vh;
width: 100vw;
font-size: 5rem;
}
.fill-rest {
height: 100%;
display: flex;
flex-direction: column;
flex-wrap: wrap;
align-items: start;
background-color: green;
}
.fill-rest div {
background-color: red;
}
<main>
<div>Some Text!</div>
<div>Some Text!</div>
<div class="fill-rest">
<div>Overflowing</div>
<div>Overflowing</div>
<div>Overflowing</div>
<div>Overflowing</div>
<div>Overflowing</div>
<div>Overflowing</div>
</div>
</main>
为什么 - 如果“溢出”的 div 不存在,元素的高度正是我想要的,但是一旦你添加太多元素,.fill-rest 高度就会变为父元素的 100% “剩余空间”?
我试图找到一种方法使.fill-rest 不会溢出main 并在剩余空间被占用时开始包装。
【问题讨论】:
-
display: inline-flex;? -
@Kameron 似乎不起作用。您可以在提供的小提琴中对其进行测试。
-
不太清楚您想要实现什么。该示例的工作方式与 CSS 中的完全相同,绿色 div 为 100%。