【发布时间】:2019-05-20 07:39:54
【问题描述】:
我需要从上到下,然后从左到右,例如:
1 5
2 6
3 7
4 8
但是,盒子阴影正在被截断。参考 sn-p:item 3 的 box 阴影在底部被切断,item 4 在顶部被切断(在 chrome 中)。
有类似的问题,但答案不适用于这种情况。我不能在带有flex-direction: column 的容器上使用 flex,因为这需要明确的高度,而我的 item 计数是动态的。我也不能像其他答案所建议的那样将项目设置为display: inline-block,因为我需要用 flex 控制这个内容。
.container {
column-count: 2;
column-gap: 16px;
width: 500px;
}
.item {
box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
border-radius: 3px;
margin-bottom: 16px;
height: 64px;
display: flex;
align-items: center;
justify-content: center;
break-inside: avoid-column;
}
<div class="container">
<div class="item">1</div>
<div class="item">2</div>
<div class="item">3</div>
<div class="item">4</div>
<div class="item">5</div>
</div>
我从其他类似的 SO 问题中尝试过的另外两件事不起作用:设置 overflow: visible,在具有透明边框的项目周围添加一个包装器。感谢您的任何建议。
【问题讨论】:
标签: css flexbox css-multicolumn-layout