回顾一下web
页面布局的历程,于我个人而言,经历了最开始的学习计算机编程时的table
布局和基础的div+css
布局,再到后来的flex
弹性盒布局。div+css
布局给web
页面布局带来了更多可能,解决了table
布局的局限性。页面是以代码的自上而下的文档流的形式呈现的,所以div+css
的浮动解决了横向布局的问题。再后来css3
提供了flex
布局的特性,让横向布局特别是移动端布局变得更加容易。
本文主要来说说与flex
布局类似的grid
布局。flex
给我们带来了“轴线”的概念,相当于是“一维”的,而grid
布局则是将容器分成了“行”和“列”,可以说是“二维”的。
老规矩,只说干货,开整。
首先,我们的基本结构如下:
* {
margin: 0;
padding: 0;
list-style: none;
}
.container {
width: 700px;
height: 700px;
background-color: #efefef;
margin: 20px auto;
display: grid;
}
.item {
width: 100px;
height: 100px;
line-height: 100px;
font-size: 30px;
font-weight: 500;
text-align: center;
}
.item:nth-child(2n) {
background-color: pink