html5 grid,css3 grid是什么?

在CSS3中,grid指的是Grid(网格) 布局。下面本篇文章就来给大家介绍一下Grid(网格) 布局。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

d41a6e7fc0b28b5dce60c5330aa6389e.png

Grid(网格) 布局使我们能够比以往任何时候都可以更灵活构建和控制自定义网格 ; 能够将网页分成具有简单属性的行和列来完成我们需要的网格布局。

它将网页划分成一个个网格,可以任意组合不同的网格,做出各种各样的布局。以前,只能通过复杂的 CSS 框架达到的效果,现在浏览器内置了。

84fa12e4c20d6c191e651e31437e5c6a.png

上图这样的布局,就是 Grid 布局的拿手好戏。

Grid 布局与 Flex 布局有一定的相似性,都可以指定容器内部多个项目的位置。但是,它们也存在重大区别。

Flex 布局是轴线布局,只能指定”项目”针对轴线的位置,可以看作是一维布局。Grid 布局则是将容器划分成”行”和”列”,产生单元格,然后指定”项目所在”的单元格,可以看作是二维布局。Grid 布局远比 Flex 布局强大。

基本概念

学习 Grid 布局之前,需要了解一些基本概念。

容器和项目

采用网格布局的区域,称为”容器”(container)。容器内部采用网格定位的子元素,称为”项目”(item)。

1

2

3

上面代码中,最外层的

元素就是容器,内层的三个
元素就是项目。

注意:项目只能是容器的顶层子元素,不包含项目的子元素,比如上面代码的

元素就不是项目。Grid 布局只对项目生效。

行和列

容器里面的水平区域称为”行”(row),垂直区域称为”列”(column)。

06f06729c3ea32042990a93c0529ac9a.png

上图中,水平的深色区域就是”行”,垂直的深色区域就是”列”。

单元格

行和列的交叉区域,称为”单元格”(cell)。

正常情况下,n行和m列会产生n x m个单元格。比如,3行3列会产生9个单元格。

网格线

划分网格的线,称为”网格线”(grid line)。水平网格线划分出行,垂直网格线划分出列。

正常情况下,n行有n + 1根水平网格线,m列有m + 1根垂直网格线,比如三行就有四根水平网格线。

ca920afd211f8bba88fcc842fb89a396.png

上图是一个 4 x 4 的网格,共有5根水平网格线和5根垂直网格线。

容器属性

display: grid指定一个容器采用网格布局。

display:inline-grid 默认情况下,容器元素都是块级元素,但也可以设成行内元素。

注意,设为网格布局以后,容器子元素(项目)的float、display: inline-block、display: table-cell、vertical-align和column-*等设置都将失效。

grid-template-columns 属性

grid-template-rows 属性

容器指定了网格布局以后,接着就要划分行和列。

grid-template-columns属性定义每一列的列宽,grid-template-rows属性定义每一行的行高。

3cc3e39341dc98df6e1ad67def80a11b.png

更多CSS相关知识,可访问 CSS教程 !!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值