【发布时间】:2018-05-25 09:14:54
【问题描述】:
我有一个定义良好的网格系统:
.col-3-grid {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}
.col-3-grid .grid-item {
-webkit-box-flex: 0;
-webkit-flex: 0 0 32%;
-ms-flex: 0 0 32%;
flex: 0 0 32%;
max-width: 33.333333%;
}
一行有3个元素时看起来不错:
Elements look good when they're 3.
但是,当第一行不是第 2 行或任何其他行的倍数或 3 的项目数量奇数时,就会发生这种情况:
Elements look bad when they're 5, 8 or so.
在第 4 项和第 6 项之间,有一个间隙。这是意料之中的,但这种方法非常优雅,我真的不想为justify-content: flex-start 放弃它,因为那样我就需要为我的每个元素添加填充,而且它们永远不会与其他元素对齐。
简而言之,我想保留space-between,但让项目在每一行都排成一行。
【问题讨论】: