13-grid网格布局
CSSgrid网格布局
grid布局的含义
含义
grid布局,也被称之为网格布局,是将页面中的父元素划分成一个个小的格子,然后通过这些小
的格子进行合并来制作出各种不同的网站效果
触发网格
给父元素添加display属性,并且将取值设置成:grid/inline-grid.grid:代表的是块状网格,默
认独占一行,类似于块级元素.inline-grid:代表的是行内块网格,与行内块元素类似
触发网格的特点
划分行列之后才能将里面的区域进行划分,显示网格
grid网格和flex弹性盒,表格
和flex:
相同点:都有容器和项目之分
不同点:flex一维,grid二维
和表格:
- 相同点:行列之分,能划分格子
- 不同点:代码嵌套,表格需要代码嵌套
grid布局中的基础概念
grid容器:采用grid布局的父元素;
grid内容:显示项目的区域
grid项目:grid布局中每一个格子内部放置的
网格线:网格布局中的横向的纵线的线条
单元格:横纵线交汇的区域被称之为单元格
间距:网格与网格之间的距离被称为间距
grid布局中的容器属性
触发网格
1 | //代表的是块状网格,默认独占一行,类似于块级元素 |
容器行列划分
- 取值为数值
grid-template-rows:100px 100px 100px - 取值为百分比
grid-template-rows:20% 30% 50% - 重复函数
grid-template-rows:repeat(3,20%)

- 自动填充
grid-template-rows:repeat(auto-fill, 30%)

- auto自动
grid-template-rows:100px auto 100px - fr片段划分
grid-template-rows:1fr 2fr 1fr - minmax()
grid-template-rows:200px 200px minmax(100px,200px)

调整间距
1 | .box { |
网格在容器中的对齐方式
水平方向对其属性:justify-content
垂直方向对其属性:align-content
justify-content:start

align-content:center

1 | justify-centent:center |

注意:justify-content,align-content取值除了有star,end,center,这些取值之外还有对应的stretch,space-around,space-between,space-evenly等值
stretch:代表的是拉伸默认值:

space-around:行列间距环绕:

space-between:行列两端对对齐:

space-evenly:行列间距平分:

grid布局中的项目属性
添加项目
在容器中添加标签即为项目,项目会自动撑开显示在单元格内部,默认项目是从左向右排列
显示顺序
1 | //横向显示 |
项目对齐方式
1 | .box { |
justify-items: start;也是默认值

justify-items: center;这行代码代表的是,项目位于水平方向的中间位置

同理垂直方向对齐:
align-items: end;

复合属性对齐
1 | place-items:水平对齐,垂直对齐 |
合并单元格属性
1 | .header { |
容器中区域定义
1 | <div class="box"> |
1 | .box { |

