首页 > 其他分享 >前端必知必会-CSS 网格项

前端必知必会-CSS 网格项

时间:2024-09-17 12:50:59浏览次数:12  
标签:示例 myArea area 必知 item1 网格 grid CSS

文章目录


CSS 网格项

子元素(项)

网格容器包含网格项。

默认情况下,容器的每一行每列都有一个网格项,但您可以设置网格项的样式,使它们跨越多列和/或多行。

grid-column 属性:

grid-column 属性定义在哪一列放置项。

您定义项的起始位置和结束位置。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

注意:grid-column 属性是 grid-column-start 和 grid-column-end 属性的简写属性。

要放置项,您可以引用行号,或使用关键字“span”来定义项将跨越多少列。

示例
使“item1”从第 1 列开始并在第 5 列之前结束:

.item1 {
grid-column: 1 / 5;
}

示例
使“item1”从第 1 列开始并跨越 3 列:

.item1 {
grid-column: 1 / span 3;
}

示例
使“item2”从第 2 列开始并跨越 3 列:

.item2 {
grid-column: 2 / span 3;
}

grid-row 属性:

grid-row 属性定义在哪一行放置项目。

您可以定义项目的开始位置和结束位置。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

注意:grid-row 属性是 grid-row-start 和 grid-row-end 属性的简写属性。

要放置项目,您可以引用行号,或使用关键字“span”来定义项目将跨越多少行:

示例
使“item1”从行 1 开始并在行 4 结束:

.item1 {
grid-row: 1 / 4;
}

示例
使“item1”从行 1 开始并跨越 2 行:

.item1 {
grid-row: 1 / span 2;
}

grid-area 属性

grid-area 属性可用作 grid-row-start、grid-column-start、grid-row-end 和 grid-column-end 属性的简写属性。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

示例
使“item8”从行线 1 和列线 2 开始,并结束于行线 5 和列线 6:

.item8 {
grid-area: 1 / 2 / 5 / 6;
}

示例
使“item8”从行线 2 和列线 1 开始,并跨越 2 行和 3 列:

.item8 {
grid-area: 2 / 1 / span 2 / span 3;
}

命名网格项

grid-area 属性也可用于为网格项分配名称。

标题
菜单
主页
右
页脚

命名的网格项可通过网格容器的 grid-template-areas 属性引用。

示例
Item1 的名称为“myArea”,并跨越五列网格布局中的所有五列:

.item1 {
grid-area: myArea;
}
.grid-container {
grid-template-areas: 'myArea myArea myArea myArea myArea';
}

每行都由撇号 (’ ') 定义

每行中的列在撇号内定义,以空格分隔。

注意:句点符号表示没有名称的网格项。

示例
让“myArea”在五列网格布局中跨越两列(句号表示没有名称的项目):

.item1 {
grid-area: myArea;
}
.grid-container {
grid-template-areas: 'myArea myArea . . .';
}

要定义两行,请在另一组撇号内定义第二行的列:

示例
让“item1”跨越两列和两行:

.grid-container {
grid-template-areas: 'myArea myArea . . .' 'myArea myArea . . .';
}

示例
命名所有项目,并制作一个随时可用的网页模板:

.item1 { grid-area: header; }
.item2 { grid-area: menu; }
.item3 { grid-area: main; }
.item4 { grid-area: right; }
.item5 { grid-area: footer; }

.grid-container {
grid-template-areas:
'header header header header header header'
'menu main main main right right'
'menu footer footer footer footer footer';
}

项目的顺序

网格布局允许我们将项目放置在我们喜欢的任何位置。

HTML 代码中的第一个项目不必作为网格中的第一个项目出现。

1
2
3
4
5
6

示例

.item1 { grid-area: 1 / 3 / 2 / 4; }
.item2 { grid-area: 2 / 3 / 3 / 4; }
.item3 { grid-area: 1 / 1 / 2 / 2; }
.item4 { grid-area: 1 / 2 / 2 / 3; }
.item5 { grid-area: 2 / 1 / 3 / 2; }
.item6 { grid-area: 2 / 2 / 3 / 3; }

您可以使用媒体查询重新排列特定屏幕尺寸的顺序:

示例

@media only screen and (max-width: 500px) {
.item1 { grid-area: 1 / span 3 / 2 / 4; }
.item2 { grid-area: 3 / 3 / 4 / 4; }
.item3 { grid-area: 2 / 1 / 3 / 2; }
.item4 { grid-area: 2 / 2 / span 2 / 3; }
.item5 { grid-area:3 / 1 / 4 / 2; }
.item6 { grid-area:2 / 3 / 3 / 4; }
}

总结

本文介绍了CSS 网格项的使用,如有问题欢迎私信和评论

标签:示例,myArea,area,必知,item1,网格,grid,CSS
From: https://blog.csdn.net/qq_24018193/article/details/142266871

相关文章

  • 前端必知必会-Sass 嵌套规则和属性
    文章目录Sass嵌套规则和属性Sass嵌套规则Sass嵌套属性总结Sass嵌套规则和属性Sass嵌套规则Sass允许您以与HTML相同的方式嵌套CSS选择器。查看网站导航的一些Sass代码示例:示例SCSS语法:nav{ ul{ margin:0; padding:0; list-style:none......
  • 这段HTML、CSS和JavaScript代码构成了一个简单的网页游戏,名为“Catch The Insect”
    这段HTML、CSS和JavaScript代码构成了一个简单的网页游戏,名为“CatchTheInsect”。以下是对代码的详细分析和说明:HTML部分基础结构:使用<!DOCTYPEhtml>声明文档类型,确保浏览器以标准模式渲染页面。<htmllang="en">标签定义了文档的语言为英语。<head>部分包含了字符集......
  • 响应式CSS 媒体查询——WEB开发系列39
    CSS媒体查询(MediaQueries)是响应式设计中的核心技术之一,帮助我们在不同设备上展示不同的样式。通过媒体查询,开发者可以检测用户设备的特性,如屏幕宽度、高度、分辨率、方向等,针对性地调整网页布局。一、CSS媒体查询基础1.1什么是媒体查询?媒体查询是CSS3引入的一种技术,允许开发者根......
  • CSS调整背景
    一、设置背景颜色通过background-color属性指定,值可以是十六进制#ffffff,也可以是rgb(0,255,255),或是颜色名称"red"div{ background-color:red; /* 通过颜色名称设置 */background-color:#ff0000; /* 通过十六进制设置 */background-co......
  • 用 CSS 实现流动边框特效
    《用CSS实现流动边框特效》在网页设计中,独特的视觉效果能够吸引用户的注意力并提升用户体验。其中,流动边框特效是一种令人眼前一亮的设计元素,可以为网页增添动感和活力。本文将介绍如何使用CSS来创建一个流动的框特效。一、准备工作首先,我们需要一个HTML元素作为应用特效的目......
  • CSS学习路线
    CSS学习路线大全及面试常见题目可以归纳为以下几个部分:CSS学习路线大全CSS基础引入CSS的方式:外部样式表、内部样式表、内联样式。CSS选择器:包括ID选择器、类选择器、标签选择器、后代选择器、子选择器、相邻兄弟选择器、兄弟选择器、属性选择器、伪类选择器、伪元素选择器等。CSS属......
  • CSS 盒子模型
    当对一个文档进行布局(layout)的时候,浏览器的渲染引擎会根据标准之一的CSS基础框盒模型(CSSbasicboxmodel),将所有元素表示为一个个矩形的盒子(box)一个盒子由四个部分组成:content、padding、border、**margin**content:即实际内容padding:即内边距,清除内容周围的区域,内边......
  • 【油猴脚本】00008 案例 Tampermonkey油猴脚本,动态渲染表格-实现页面动态-添加表格列,
    前言:哈喽,大家好,今天给大家分享一篇文章!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏+关注哦......
  • 【Python基础学习】16个必知必会的Python教程
    介绍Python是一门用途广泛的编程语言,它具有大量的库和框架。有一些鲜为人知的Python编码技巧和库可以让你作为开发人员的工作更为轻松,编写代码更高效。本文中将探讨一些鲜为人知的Python技巧,这些技巧非常有用,但并不广为人知。通过学习和使用这些技巧,可以帮你节省时......
  • 【好用安全保密】不用插件,压缩js、html、css、code【一眼就会系列】【亲测有效】
    ​仅用离线版Notepad搞定。不用插件及辅助工具,有效保证了文件信息安全。(一般发布版本都是无注释的-压缩文件和已编译文件。为了信息安全性,所有都是离线-区域网研发。)​ 总结:先把文本中注释去掉。notepad++ 【编辑】-【空白字符操作】-【移除行首和行尾空格】点击任意......