css – 将flexbox儿童设置为具有不同的高度以使用可用空间

前端之家收集整理的这篇文章主要介绍了css – 将flexbox儿童设置为具有不同的高度以使用可用空间前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
使用两列弹性框布局,如何使不同大小的孩子填充所有可用空间,而不是所有孩子的行高度最高的孩子?

我在jsbin上设置了一个演示,说明了这个问题。我想让所有的孩子成为他们包装内容的大小。

#container {

 width: 800px;
  display: flex;
  flex-wrap: wrap;
}

.cell {
  width: 300px;
  flex; 1 auto;
}


<div id="container">

<div class="cell">
Cells with arbitrarily long content.</div>

<div class="cell">
</div>

<div class="cell">
</div>

<div class="cell">
</div>

<div class="cell">
</div>

</div>

</body>
</html>

解决方法

这就是FlexBox行的行为方式。 FlexBox不是要用纯CSS重新创建砖石:一行中的项目不能占用前一个/后续行分配的空间(如果使用列方向,则与列相同)。您可以使用对齐项来阻止它们伸展,但这是关于它:

http://cssdeck.com/labs/9s9rhrhl

#container {

 width: 800px;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}

.cell {
  width: 300px;
  flex: 1 auto;
  padding: 10px;
  border: 1px solid red;
}

否则,您应该使用列方向或多列模块(请参阅此SO答案:http://stackoverflow.com/a/20862961/1652962)

猜你在找的CSS相关文章