【发布时间】:2014-10-16 07:15:05
【问题描述】:
我有一个固定宽度和可变高度的容器。我正在用未知数量的元素填充容器。 我希望元素按列排列,从上到下,然后从左到右。
我可以使用column,但是我不知道子元素的最大宽度,所以我不能设置column-width或column-count。
我认为display: flex 和flex-flow: column wrap 是要走的路,但如果我在容器上维护height: auto,它将生成为单个列,而无需包装元素以使用所有可用宽度。
我可以说服 flexbox 使用所有可用的宽度,从而最小化容器的高度吗? 您会提出不同的解决方案吗?
小提琴:http://jsfiddle.net/52our0eh/
来源:
HTML:
<div>
<span>These</span>
<span>should</span>
<span>arrange</span>
<span>themselves</span>
<span>into</span>
<span>columns,</span>
<span>using</span>
<span>all</span>
<span>available</span>
<span>width</span>
<span>and</span>
<span>minimizing</span>
<span>the</span>
<span>container's</span>
<span>height.</span>
</div>
CSS:
div {
outline: 1px solid red;
width: 100%;
display: flex;
flex-flow: column wrap;
align-items: flex-start;
/*height: 8em;*/
}
span {
outline: 1px solid blue;
}
【问题讨论】:
-
2022 年仍在努力想出一个好的解决方案......!