【发布时间】:2016-03-07 02:08:16
【问题描述】:
我正在创建一个卡片式布局,其中单个卡片垂直堆叠。在更高的屏幕宽度下,使用的卡片列越来越多 - 使用尽可能少的垂直空间。
我正在使用flex-flow: column wrap 布局来执行此操作。但是,我发现容器需要有height 或max-height 以鼓励卡片包装。鉴于卡片的数量和它们各自的大小可能会发生变化,如果不切断物品或在下方留出过多空间,我无法判断这个高度的最佳值。
谁能告诉我这是否可行,或者我做错了什么?
附上片段。
.card-container {
display: flex;
flex-flow: column wrap;
align-items: stretch;
}
.card {
flex: 0 0 auto;
width: 15rem;
margin: 0.5rem;
background-color: #f4f4f4;
/* max-height: ??? */
}
<div class="card-container">
<div class="card" style="height: 20em"></div>
<div class="card" style="height: 17em"></div>
<div class="card" style="height: 5em"></div>
<div class="card" style="height: 10em"></div>
<div class="card" style="height: 21em"></div>
<div class="card" style="height: 10em"></div>
<div class="card" style="height: 17em"></div>
<div class="card" style="height: 8em"></div>
<div class="card" style="height: 20em"></div>
<div class="card" style="height: 16em"></div>
<div class="card" style="height: 19em"></div>
<div class="card" style="height: 10em"></div>
<div class="card" style="height: 5em"></div>
</div>
【问题讨论】:
-
我也经常遇到这个问题。为了让弹性项目在列方向上换行,需要定义一个高度。 SMH。问题不会发生在行方向。我还没有找到解决办法。更糟糕的是,一旦你解决了这个问题,你就需要处理这个问题:stackoverflow.com/q/33891709/3597276