gpt4 book ai didi

css - flex 盒 : grow all items but last line

转载 作者:技术小花猫 更新时间:2023-10-29 10:06:53 25 4
gpt4 key购买 nike

我目前有这个简单的 Flexbox 布局:

ul {
display: flex;
flex-wrap: wrap;
list-style: none;
padding: 0;
}
li {
flex-grow: 1;
padding: 20px;
margin: 10px;
background: #ddd;
}
<ul>
<li>lorem</li>
<li>ipsum</li>
<li>dolor</li>
<li>sit</li>
<li>amet</li>
<li>consectetur</li>
<li>adipisicing</li>
<li>elit</li>
<li>sed</li>
<li>do</li>
<li>eiusmod</li>
<li>tempor</li>
<li>incididunt</li>
<li>ut</li>
<li>labore</li>
<li>et</li>
<li>dolore</li>
<li>magna</li>
<li>aliqua</li>
</ul>

我希望我的元素填满容器宽度(就像现在一样),但让最后一行左对齐。如您所见,最后一行试图填充空间,这有时会使最后一个元素的宽度变得难看。

Flexbox 允许我们这样做吗?我找不到办法。

最佳答案

你可以添加一个带有巨大flex-grow::after伪元素,这样flex-grow: 1 li 元素可以忽略不计:

ul::after {
content: '';
flex-grow: 1000000000;
}

ul {
display: flex;
flex-wrap: wrap;
list-style: none;
padding: 0;
}
li {
flex-grow: 1;
padding: 20px;
margin: 10px;
background: #ddd;
}
ul::after {
content: '';
flex-grow: 1000000000;
}
<ul>
<li>lorem</li>
<li>ipsum</li>
<li>dolor</li>
<li>sit</li>
<li>amet</li>
<li>consectetur</li>
<li>adipisicing</li>
<li>elit</li>
<li>sed</li>
<li>do</li>
<li>eiusmod</li>
<li>tempor</li>
<li>incididunt</li>
<li>ut</li>
<li>labore</li>
<li>et</li>
<li>dolore</li>
<li>magna</li>
<li>dolore</li>
<li>magna</li>
<li>aliqua</li>
</ul>

关于css - flex 盒 : grow all items but last line,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30307519/

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