blob: d903918f9adf752d10a3a790f3e851bd314bb56d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
|
---
title: Grid
slug: Glossary/Grid
tags:
- CSS
- CSS Grid
- CSS 网格布局
- grid
translation_of: Glossary/Grid
---
<p class="brush: css">通过设置CSS属性 <code>display: grid;</code> 可以定义一个 CSS 网格。接着可以使用 {{cssxref("grid-template-rows")}} 和 {{cssxref("grid-template-columns")}} 属性定义网格的列属性(columns)和行属性(rows)。</p>
<p>使用这些属性定义的网格被称为 <em>显式网格 (explicit grid)。</em></p>
<p>如果开发者将内容放置在显式网格之外 ,或者依赖自动布局的话,网格法(grid algorithm)将需要创建额外的row或者column、 {{glossary("grid tracks", "tracks")}} 来包含显示网格之外的内容 {{glossary("grid item", "grid items")}},为此将在隐式网格(implicit grid)中创建额外的轨道(tracks)。<em>当内容添加到了已定义的tracks之外的时候,隐式网格(implicit grid)会被自动创建。</em></p>
<p>下面的例子创建了一个有两行三列的显式网格<em>。</em>由于超过显式网格可容纳的六个条目,<em>此网格中的第三行将是一个隐式网格行轨道(implicit grid </em>row track)</p>
<p><em>(注:在容器div上用 row和column定义的网格总数,等于 行数乘以列数 个。比如一个容器div定义了2行*3列=6个网格,这6个就是显式网格,但是假如里面有8个 子div,多出来那2个就叫做隐式网格。)</em></p>
<div id="example">
<div class="hidden">
<pre class="brush: css notranslate">* {box-sizing: border-box;}
.wrapper {
border: 2px solid #f76707;
border-radius: 5px;
background-color: #fff4e6;
}
.wrapper > div {
border: 2px solid #ffa94d;
border-radius: 5px;
background-color: #ffd8a8;
padding: 1em;
color: #d9480f;
}
</pre>
</div>
<pre class="brush: css notranslate">.wrapper {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
grid-template-rows: 100px 100px;
}
</pre>
<pre class="brush: html notranslate"><div class="wrapper">
<div>One</div>
<div>Two</div>
<div>Three</div>
<div>Four</div>
<div>Five</div>
<div>Six</div>
<div>Seven</div>
<div>Eight</div>
</div>
</pre>
<p>{{ EmbedLiveSample('example', '500', '330') }}</p>
<h2 id="了解更多">了解更多</h2>
<h3 id="属性参考">属性参考</h3>
<ul>
<li>{{cssxref("grid-template-columns")}}</li>
<li>{{cssxref("grid-template-rows")}}</li>
<li>{{cssxref("grid")}}</li>
<li>{{cssxref("grid-template")}}</li>
</ul>
<h3 id="扩展阅读">扩展阅读</h3>
<ul>
<li>CSS Grid Layout Guide: <em><a href="/zh-CN/docs/Web/CSS/CSS_Grid_Layout/Basic_Concepts_of_Grid_Layout">布局的基本概念</a></em></li>
</ul>
</div>
|