CSS Grid 布局由两个核心组成部分是 wrapper(父元素)和 items(子元素)。 wrapper 是实际的 grid(网格),items 是 grid(网格) 内的内容。
1 | //HTML |
2 | <div class="wrapper"> |
3 | <div>1</div> |
4 | <div>2</div> |
5 | <div>3</div> |
6 | <div>4</div> |
7 | <div>5</div> |
8 | <div>6</div> |
9 | </div> |
使用grid-template-row和grid-template-column属性
1 | //CSS |
2 | .wrapper { |
3 | display: grid; |
4 | grid-template-columns: 100px 100px 100px; |
5 | grid-template-rows: 50px 50px; |
6 | } |
显示如下:

再看一个例子
1 | .wrapper { |
2 | display: grid; |
3 | grid-template-columns: 200px 50px 100px; |
4 | grid-template-rows: 100px 30px; |
5 | } |
显示如下:

items子元素
给每个items元素加上class
1 | <div class="wrapper"> |
2 | <div class="item1">1</div> |
3 | <div class="item2">2</div> |
4 | <div class="item3">3</div> |
5 | <div class="item4">4</div> |
6 | <div class="item5">5</div> |
7 | <div class="item6">6</div> |
8 | </div> |
1 | .wrapper { |
2 | display: grid; |
3 | grid-template-columns: 100px 100px 100px; |
4 | grid-template-rows: 100px 100px 100px; |
5 | } |
给子元素添加css
1 | .item1 { |
2 | grid-column-start: 1; |
3 | grid-column-end: 4; |
4 | } |
5 | //简写 |
6 | .item1 { |
7 | grid-column: 1 / 4; |
8 | } |
显示如下:

再看个例子
1 | .item1 { |
2 | grid-column-start: 1; |
3 | grid-column-end: 3; |
4 | } |
5 | .item3 { |
6 | grid-row-start: 2; |
7 | grid-row-end: 4; |
8 | } |
9 | .item4 { |
10 | grid-column-start: 2; |
11 | grid-column-end: 4; |
12 | } |
显示如下:
