【发布时间】:2019-04-30 01:14:19
【问题描述】:
对我来说,一旦我删除 grid-area,grid-auto-columns: 50px 50px 20px; 就不会将容器分成 3 列 50px 50px 20px,这非常违反直觉。在获得 3 列之前,您必须在其上强制使用 grid-area。没有你得到一列。这是为什么?他们为什么要这样设计?
.container {
display: grid;
grid-auto-rows: 20px 50px;
grid-auto-columns: 50px 50px 20px;
grid-row-gap: 5px;
grid-column-gap: 5px;
}
div {
margin: 0;
padding: 0;
border: 1px solid black;
}
.area {
grid-area: 1/1/1/4;
}
<div class="container">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div class="area">5</div>
<div>6</div>
<div>7</div>
<div>8</div>
</div>
.container {
display: grid;
grid-auto-rows: 20px 50px;
grid-auto-columns: 50px 50px 20px;
grid-row-gap: 5px;
grid-column-gap: 5px;
}
div {
margin: 0;
padding: 0;
border: 1px solid black;
}
.area {
grid-area: 1/1/1/4;
}
<div class="container">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
<div>6</div>
<div>7</div>
<div>8</div>
</div>
【问题讨论】:
-
也许你想要的是
grid-template-columns而不是grid-auto-colums -
为您提供更多资源:stackoverflow.com/questions/55298508 以及此处隐式网格的一个很好的应用:stackoverflow.com/questions/55309569