【发布时间】:2018-06-25 05:04:07
【问题描述】:
有没有办法使用带有网格间隙和缺少网格区域的网格布局,而不会在布局中留下额外的间隙。
.main {
display: grid;
grid-template-columns: 1fr 1fr;
width: 500px;
}
.container {
display: grid;
grid-template-columns: 1fr;
grid-template-areas: 'a' 'b' 'c' 'd';
width: 200px;
grid-gap: 10px;
}
.a, .b, .c, .d {
border: 1px solid black;
width: 200px;
}
.a {
grid-area: a;
}
.b {
grid-area: b;
}
.c {
grid-area: c;
}
.d {
grid-area: d;
}
<div class="main">
<div class="container">
<div class="a">A box</div>
<div class="b">B box</div>
<div class="d">D box</div>
</div>
<div class="container">
<div class="a">A box</div>
<div class="b">B box</div>
<div class="c">C box</div>
<div class="d">D box</div>
</div>
</div>
当 C 不在布局中时,您可以看到 B 和 D 之间存在间隙。
除了更改为 flex 布局(非网格显示)之外,有没有办法避免这种情况?
谢谢, 斯里坎特
【问题讨论】: