【发布时间】:2013-09-15 15:40:44
【问题描述】:
我有一个简单的 flex-box 布局,其中包含如下容器:
.grid {
display: flex;
flex-flow: row wrap;
justify-content: space-between;
}
现在我希望最后一行中的项目与其他项目对齐。应该使用justify-content: space-between;,因为可以调整网格的宽度和高度。
目前看起来像
在这里,我希望右下角的项目位于“中间列”中。实现这一目标的最简单方法是什么?这是一个小的jsfiddle,它显示了这种行为。
.exposegrid {
display: flex;
flex-flow: row wrap;
justify-content: space-between;
}
.exposetab {
width: 100px;
height: 66px;
background-color: rgba(255, 255, 255, 0.2);
border: 1px solid rgba(0, 0, 0, 0.4);
border-radius: 5px;
box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
margin-bottom: 10px;
}
<div class="exposegrid">
<div class="exposetab"></div>
<div class="exposetab"></div>
<div class="exposetab"></div>
<div class="exposetab"></div>
<div class="exposetab"></div>
<div class="exposetab"></div>
<div class="exposetab"></div>
<div class="exposetab"></div>
<div class="exposetab"></div>
<div class="exposetab"></div>
<div class="exposetab"></div>
<div class="exposetab"></div>
<div class="exposetab"></div>
<div class="exposetab"></div>
</div>
【问题讨论】:
-
在此处查看我的解决方案,我认为无需 hack 就可以很好地工作,只是数学:stackoverflow.com/questions/18744164/…
-
或者,可以使用较新的css grid module - 没有这个问题
-
我为子宽度可变的情况添加了一个通用的 JS 解决方案,使行上的项目数也可变。
标签: css flexbox grid-layout