【发布时间】:2019-07-21 16:12:48
【问题描述】:
如何在列中均匀分布 x 个元素。 例如,如果我有这个代码
div {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
grid-gap: 0.5rem;
}
span {
background: red;
height: 50px;
}
<div>
<span></span>
<span></span>
<span></span>
<span></span>
</div>
我希望它均匀地贴合。所以它不应该在第一行显示 3 个项目,在第二行显示 1 个项目。相反,它应该在第一个上显示 2 个项目,在第二个上显示 2 个项目。只要它可以将它均匀地分布在每一行上,它就应该这样做。
我做了一个几乎可以做到的 sn-p。问题是当屏幕真的很小时,第一个显示 3,第二个显示 1。请注意,现在我只有 4 个项目,但它应该可以动态处理任意数量的项目。
【问题讨论】:
-
您可以使用媒体查询,
auto-fit规则不会让您指定最小列数;因此对于较小的屏幕,您可以设置固定数量的列