我的目标是使用 CSS 网格布局进行两列砌体布局。给定一个有子元素的元素:
<section>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
</section>
让孩子们将自己交替排列成列。我的想法是有两个网格区域left
并right
告诉孩子们分成它们:
section {
display: grid;
grid-template-areas: "left right";
}
div:nth-child(odd) {
grid-area: left;
}
div:nth-child(even) {
grid-area: right;
}
这是一个说明我当前状态的 JSBin:https ://jsbin.com/zaduruv/edit?html,css,output
不幸的是,这些元素的反应与它们设置的完全相同position:absolute
。也就是说,它们都挤向顶部并相互重叠。
CSS网格布局属性是否有可能让孩子们在列中排队,就像他们通常做的那样position: static
?