Grid布局学习

6 篇文章 0 订阅

1. grid布局简介与对比

简介:
grid采用网格布局方案,
把一块区域划分为多个网格,
然后分别用元素去填充这些网格。

与flex布局对比:
整体布局理念与flex有点类似,
但grid布局在实现固定区域布局的时候显得更灵活更易用。
flex布局是基于弹性盒子模型,让元素按先后顺序塞进大盒子里,可以说是简化的float布局。
grid布局则是类似于表格,用一个大网格来划分出若干个小网格,元素可以塞进任意一个或多个网格中,位置控制上更灵活。

2. grid的基本用法

1. 声明grid
display:grid;
display:inline-grid;	//行内网格布局

2. 设置网格的行和列
grid-template-rows:100px 100px 100px;	//3行表格,均为100px高
grid-template-rows:repeat(3,1fr);	//3行表格,1fr相当于flex:1,表示三个等高,均分大网格的高度
grid-template-rows:repeat(3,100px 200px 200px);	//按100px 200px 200px的分布重复3次,即9行
grid-template-rows:repeat(auto-fill,100px);	//单元格大小确定,容器大小不确定,希望一行尽可能容纳多的单元格
grid-template-rows:50% 50%;	//2行表格,平分高度
grid-template-rows:minmax(50px,100px);	//不小于50px不大于100px
grid-template-columns:100px 100px 100px;	//3列表格

3. 设置行列的间隔
grid-row-gap:10px;
grid-column-gap:10px;
grip-gap:10px 10px;	//合并写法,row-gap,column-gap

4. 设置排列方向
grid-auto-flow:column;	//默认是row

5. 设置水平/竖直方向位置,具体要看flow的方向
justify-items/align-items	//start,end,center,stretch等同于同时设置每个子元素的justify-self/align-self
justify-content/align-content	//space-between,space-around,space-evenly,start,end,center,stretcg把子元素作为一个整体,相对于父容器的位置
justify-self/align-self	//start,end,center,只设置自己的位置

合并写法:
place-content:<align-content><justify-content>
place-items:<align-items><justify-items>

6. 子元素所占的单元格位置
grid-column-start:1
grid-column-end:2
grid-row-start:1
grid-row-end:2

上述例子占据了左上角的一个单元格,
大网格从左到右的边线编号为1,2,3...,从上到下的编号为1,2,3...

合并写法:
grid-row:1/span 2;	//span代表跨越了多少个单元格
grid-column:1/1;

当然,还有一些关于grid-area等属性,因为作者平时很少用,就先不写啦~欢迎大家批评指正~

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值