html栅格 像素,grid-css栅格布局

还记得五子棋棋盘吗?![](https://box.kancloud.cn/1333c386b2a9889d9fc7cd62036e369b_541x484.png)

> 我认为:grid布局就是将需要分割排列的容器变成一张由一个个小格子组成的棋盘,从左上角开始以(1,1)为原点向右、向下延伸,在grid布局中,你最常见的单词便是row和column,分别代表行与列,可以将其想象为一个特殊的二维坐标轴的横(row)、纵(column)坐标

## 1.父元素 网格容器grid

想使用grid布局的前提便是定义:

~~~

.container {

display: grid | inline-grid | subgrid;

}

~~~

* :grid 会生成一个块级网格

* :inline-grid 会生成一个内联网格

* :subgrid 如果你的网格容器本身是另一个网格的网格项(即嵌套网格),你可以使用这个属性来表示:你希望它的行/列的大小继承自它的父级网格容器,而不是自己指定的。

## 2.grid-template

**使用空格分隔的值列表,用来定义网格的列和行。这些值表示 网格轨道(Grid Track) 大小,它们之间的空格表示网格线。**

~~~

grid-template: 100px 100px 100px / 100px 100px 100px ;

// 简写方式,用于规定初始单个网格的行列数量与行列高低

~~~

例:

~~~

.container {

display: grid;

grid-template: 100px 100px 100px / 100px 100px 100px ;

}

// 这将会使container分割成3行3列,每个栅格的大小都为100px*100px;

~~~

### 2.1grid-template-columns

~~~

// 用于规定容器内有多少列且每列有多宽

.container {

display: grid;

grid-template-columns: 100px 200px 100px 100px;

}

~~~

### 2.2grid-template-rows

~~~

// 用于规定容器内有多少行且每行有多高

.container {

display: grid;

grid-template-rows: 100px 200px 100px 100px;

}

~~~

## 3.grid-gap

**指定网格线(grid lines)的大小。你可以把它想象为设置列/行之间间距的宽度。**

> 只能在 列/行 之间创建间距,网格外部边缘不会有这个间距。

~~~

// 简写方式

.container{

grid-template-columns: 100px 100px 100px;

grid-template-rows: 100px 100px 100px;

grid-gap: 10px 15px;

}

~~~

### 3.1grid-column-gap

**列与列之间的间距**

### 3.2grid-row-gap

**行与行之间的间距**

## 4.grid-column、grid-row

用于设置格子的大小与位置

### 4.1grid-column-start,grid-column-end

~~~

格子的列宽(从start到end) start和and均为正整数

可以简写为 grid-column: start / end

~~~

### 4.2grid-row-start,grid-row-end

~~~

格子的行高(从start到end) start和and均为正整数

可以简写为 grid-row: start / end

~~~

> **当grid-column与grid-row只传一个值时代表默认宽高均为一个单位,而传递的那个值会作为定位使用,若传递两个值时长宽的大小等于end-start**

## 5.grid自适应布局

将大小单位改为 fr即可实现

~~~

.container {

display: grid;

grid-template: 1fr 1fr 1fr / 1fr 1fr 1fr;

height: 999px;

}

// 这将会使container分割成3行3列,每个栅格的大小都为1/3的总宽*333px;

~~~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
栅格布局Grid Layout)是一种常用的网页布局方式,实现起来也比较简单。以下是实现栅格布局的基本步骤: 1. 在 HTML 中,使用 `<div>` 标签创建一个容器,作为整个栅格布局的父元素。 2. 使用 CSS 中的 `display: grid` 属性将容器设置为栅格布局。 3. 使用 `grid-template-columns` 和 `grid-template-rows` 属性定义栅格布局中每个栅格的列数和行数。 4. 使用 `grid-column` 和 `grid-row` 属性指定每个子元素所在的栅格位置。 下面是一个简单的栅格布局示例代码: ``` <!DOCTYPE html> <html> <head> <style> .container { display: grid; grid-template-columns: repeat(3, 1fr); grid-template-rows: repeat(2, 100px); gap: 10px; } .item { background-color: #ccc; padding: 20px; } .item1 { grid-column: 1 / 3; grid-row: 1 / 2; } .item2 { grid-column: 2 / 4; grid-row: 2 / 3; } </style> </head> <body> <div class="container"> <div class="item item1">1</div> <div class="item item2">2</div> <div class="item">3</div> <div class="item">4</div> <div class="item">5</div> <div class="item">6</div> </div> </body> </html> ``` 在上面的例子中,使用 `grid-template-columns` 和 `grid-template-rows` 分别定义了每个栅格的列数和行数,其中 `repeat(3, 1fr)` 表示有 3 列,每列的宽度平均分配。`gap` 属性用于定义栅格之间的间隔。使用 `grid-column` 和 `grid-row` 属性指定了每个子元素所在的栅格位置。 通过这些基本的步骤,就可以实现一个简单的栅格布局。当然,栅格布局还有很多其他的属性和技巧,需要根据实际需求进行灵活运用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值