gird 网格布局学习

属性

1、grid-template-columns

用来定义 网格容器的列轨道(columns) 的尺寸和数量。它允许你设定网格的列布局,控制列的宽度和排列方式。

// 使用示例
// 你可以使用固定的长度单位来定义每一列的宽度。例如
1、grid-template-columns: 100px 200px 300px;// fr 是 CSS Grid 中的一个相对单位,表示容器宽度的一个比例。例如:
// 这表示容器宽度会被分成 4 份,第一列和第三列占 1 份,第二列占 2 份。
2、grid-template-columns: 1fr 2fr 1fr;// 这将创建两列,第一列宽度在 100px 到 300px 之间,第二列宽度在 150px 到 400px 之间。
3、grid-template-columns: minmax(100px, 300px) minmax(150px, 400px);// 这将创建 3 列,每列宽度为容器宽度的 1/3。
4、grid-template-columns: repeat(3, 1fr);// max-content:列宽度根据内容的最大尺寸来确定。
// min-content:列宽度根据内容的最小尺寸来确定。
// fit-content():列宽度根据内容自动调整,但不超过指定的最大值。 例如:
5、grid-template-columns: max-content min-content fit-content(200px);

2、grid-auto-columns

grid-auto-columns 属性用于定义当网格容器中自动创建新列时,列的大小。换句话说,当网格项超出已定义的列轨道(grid-template-columns)时,grid-auto-columns控制自动添加的列的宽度。

// 使用示例// 这将使自动添加的列的宽度为200像素。
1、grid-auto-columns: 200px;// 这将使自动生成的列宽度为容器宽度的20%。
2、grid-auto-columns: 20%;// 这表示每个自动生成的列的宽度将在100px到300px之间,根据可用空间自动调整。
3、grid-auto-columns: minmax(100px, 300px);// 这样会使自动生成的列宽度等于内容的最大宽度。
4、grid-auto-columns: max-content;// 这样会使自动生成的列宽度等于内容的最小宽度。
5、grid-auto-columns: min-content;// 这将使自动生成的列宽度根据内容调整,但最大宽度为200px。
6、grid-auto-columns: fit-content(200px);

3、grid-template-rows

grid-template-rows 属性是用来定义 网格容器中行的高度 的,可以指定固定的值、相对比例、自动调整等方式。通过它,你可以灵活地设计网格布局,确保行的高度符合需求,或者根据内容自适应调整。

// 使用示例// 这将创建三个行,行高分别为 100px、200px 和 300px。
1、grid-template-rows: 100px 200px 300px;// 这将创建三个行,分别占容器总高度的 20%、30% 和 50%。
2、grid-template-rows: 20% 30% 50%;// 这表示容器高度会被分成 4 份,第一行和第三行占 1 份,第二行占 2 份。
3、grid-template-rows: 1fr 2fr 1fr;// 这将创建三个行,每一行的高度会根据其中内容的高度来自动调整。
4、grid-template-rows: auto auto auto;// 这将创建两行,第一行高度在 100px 到 300px 之间,第二行高度在 150px 到 400px 之间。
5、grid-template-rows: minmax(100px, 300px) minmax(150px, 400px);// 这将创建 3 行,每行的高度为容器高度的 1/3。
6、grid-template-rows: repeat(3, 1fr);// max-content:行高度根据内容的最大尺寸来确定。
// min-content:行高度根据内容的最小尺寸来确定。
// fit-content():行高度根据内容自动调整,但不超过指定的最大值。 例如:
7、grid-template-rows: max-content min-content fit-content(200px);

4、grid-auto-rows

grid-auto-rows 是 CSS Grid 布局中的一个属性,用于定义 自动生成的行(grid items) 的高度。这些行是在 grid-template-rows 属性定义的行之外的额外行,即当网格容器中的项目超过了已定义的行数时,自动创建的行将使用这个属性来指定其高度。

// 使用示例// 这表示如果有额外的行被创建,它们的高度将会是 100px。
1、grid-auto-rows: 100px;// 这表示每一行的高度会根据内容的大小自动适应
2、grid-auto-rows: auto;// 这表示每个自动生成的行的高度将占容器剩余高度的相等部分。
3、grid-auto-rows: 1fr;// 这表示每个自动生成的行的高度会在 100px 和 200px 之间调整,具体高度取决于内容
4、grid-auto-rows: minmax(100px, 200px);// max-content:行高度根据内容的最大尺寸来确定。
// min-content:行高度根据内容的最小尺寸来确定。
// fit-content():行高度根据内容自动调整,但不超过指定的最大值。
5、grid-auto-rows: max-content;

5、grid-row

设置跨度后,会影响网格项在垂直方向上的布局,控制它从起始行线开始,占据多少行的空间。它主要用于让单个网格项跨越多个行,而不是仅占据一个行。

可选值

  • 数字:表示网格的行线(从 1 开始计数)。例如,1 表示网格的第一行线,2 表示第二行线,依此类推。
  • span:关键字 span 表示跨越多少行。例如,span 2 表示从起始行开始,跨越 2 行。
  • 负数:负数表示从最后一行线开始计数。例如,-1 表示最后一行线,-2 表示倒数第二行线。
  • auto:表示自动计算,通常与其他值一起使用来自动适应网格项的尺寸。
// 使用示例// 这个例子表示该网格项从第二行线开始,跨越到第四行线(即跨越 2 行)。
.grid-item {grid-row: 2 / 4;
}// 这个例子表示该网格项从第一行开始,并且跨越 3 行(从第一行到第四行)。
.grid-item {grid-row: 1 / span 3;
}// 这个例子表示该网格项从倒数第三行线开始,直到倒数第一行线(即最后一行线)。
.grid-item {grid-row: -3 / -1;
}//在这个例子中,网格项的起始行是自动计算的,结束行是第三行线。
.grid-item {grid-row: auto / 3;
}

6、grid-column

grid-column 是 CSS Grid 布局中的一个属性,用于指定一个元素在网格(grid)中的列位置和跨越的列数。它可以控制元素从哪个列开始、跨越多少列

上面的·话总结就是合并列

grid-column: 1 / 3; 该元素从第 1 列开始,跨越到第 3 列,不包括第三列。
grid-column: span 2; 该元素从其默认位置开始,跨越 2 列。

7、grid-template-areas

用于在 CSS Grid 布局中定义网格的命名区域,使得在网格容器中对各个子元素的定位更加直观和易于管理。它允许你为网格的不同区域指定名称,并通过这些名称来布置网格项。

网格项的对齐方式

  • justify-items:控制的是单个 网格项(Grid Item) 在各自单元格内的对齐方式。
  • justify-content:控制的是整个 容器(Grid Container) 中项目在主轴方向上的对齐方式。
  • justify-items:控制水平对齐。
  • align-items:控制垂直对齐。
  • justify-content:控制水平方向的对齐。
  • align-content:控制垂直方向的对齐。
  • place-items 是 justify-items 和 align-items 的简写。
  • place-content 是 justify-content 和 align-content 的简写。

gird中函数的使用

1. repeat()

repeat() 是一个函数,用于简化重复设置网格行或列的定义。它可以用来创建多个相同大小的列或行,而不需要逐个列出每个值

repeat(count, size)count:表示重复的次数。
size:每个重复的列或行的大小。

2. minmax()

minmax() 是一个函数,用于设置网格行或列的大小范围,允许你定义一个最小值和最大值。这使得网格项的大小在该范围内动态调整,特别是在响应式设计中非常有用。

minmax(min, max)min:定义该行或列的最小尺寸。
max:定义该行或列的最大尺寸。// 示例
.container {display: grid;grid-template-columns: repeat(3, minmax(100px, 1fr)); /* 最小100px,最大1fr的三列 */
}

3、fit-content()

fit-content() 是一个函数,它根据内容的大小来决定行或列的尺寸。它可以使列或行的大小适应其内容,最多可以扩展到指定的最大值。

fit-content(value)示例
.container {display: grid;grid-template-columns: fit-content(200px) 1fr; /* 第一列根据内容大小调整,最多200px,第二列占剩余空间 */
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/83879.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/83879.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

git最常用命令

本地身份 git config --global user.name "酒剑仙" git config --global user.email "xxxxqq.com"创建.gitignore文件 git init链接服务器 git remote add origin https://gitee.com/greentran/你的项目.git提交本地 git add .查看本地提交 git statu…

值类:Kotlin中的零成本抽象

Kotlin的值类(Value Class)是一种强大的类型安全工具,允许开发者创建语义明确的类型,并保持运行时零成本。 假设系统中存在用户的概念,用户拥有名字和电子邮箱地址。用户名和电子邮箱地址都是长度不超过120个字符的字…

arm64版BC-liunx-for-euler与X86_64版OpenEuler从源码安装git-lfs

1.arm64版BC-liunx-for-euler安装git-lfs 检查系统版本信息 uname -a Linux bms-42068966-004 5.10.0-136.49.0.127.10.oe2203.bclinux.aarch64 #1 SMP Tue Oct 10 14:09:09 CST 2023 aarch64 aarch64 aarch64 GNU/Linux 下载git-lfs构建脚本和源码 git clone https://gite…

2025国家卫健委减肥食谱PDF完整版(免费下载打印)

《成人肥胖食养指南(2024年版)》发布:科学减肥,从这里开始‌ 在这个追求健康与美的时代,减肥成为了许多人关注的热点话题。国家卫健委正式发布了《成人肥胖食养指南(2024年版)》,为我…

Android 手机如何实现本地视频音频提取?实战教程来了

我们经常会遇到这样的需求:比如看到一段喜欢的短视频,想把里面的背景音乐保存下来;或者需要从一段课程视频中提取语音内容用于学习。这时候,将手机视频转换成 MP3 音频就是一个非常实用的功能。 今天就来教大家如何使用一款简单好…

STM32项目---汽车氛围灯

一、蓝牙模块驱动 1、怎么使用蓝牙模块呢? 1:首先,先通过串口调试助手验证蓝牙模块是否正常使用。先连接好 2:打开串口调试软件配置好 3:发送测试指令:AT\r\n,返回OK,则说明连接正确&#xff…

python+uniapp微信小程序的共享雨伞租赁系统

目录 技术栈介绍具体实现截图系统设计研究方法:设计步骤设计流程核心代码部分展示研究方法详细视频演示试验方案论文大纲源码获取/详细视频演示 技术栈介绍 Django-SpringBoot-php-Node.js-flask 本课题的研究方法和研究步骤基本合理,难度适中&#xf…

一次生产故障引发的JVM垃圾回收器选型思考:彻底掌握垃圾回收原理及通用配置!

写在前面的话 前几天凌晨2点,我被一通电话惊醒——线上交易系统出现了严重的延迟问题,用户支付请求响应时间从平时的100ms飙升到了5秒,客服电话都被打爆了。 经过紧急排查,我们发现罪魁祸首竟然是JVM的垃圾回收器!当…

学习日记-day30-6.15

完成目标: 知识点: 1.DDL和DML的补充 知识点 核心内容 重点 快速创建表 使用CREATE TABLE...AS SELECT语句基于现有表快速创建新表 结构和数据复制 vs 仅复制结构(WHERE 12) 数据删除操作 DELETE FROM逐条删除 vs TRUNCAT…

从检测到智能质控:IACheck如何成为TIC机构的AI中台?

一、TIC行业为何亟需AI质控? 过去十年,中国的TIC(Testing, Inspection, Certification)行业年均增长超过10%。无论是消费品、环境监测,还是工业制造、出口贸易,对“第三方检测报告”的依赖程度持续加深。 …

cka-1.32考题

1、HPA自动扩缩容 考题 (考试的考题内容,只有下面方框里的内容) 你必须连接到正确的主机。不这样做可能导致零分。 [candidatebase] $ ssh cka000050 Task 在 autoscale namespace 中创建一个名为 apache-server 的新 HorizontalPodAut…

DeepSeek 技术原理详解

引言 DeepSeek是一种基于Transformer架构的大型语言模型,它在自然语言处理领域展现出了卓越的性能。本文将深入探讨DeepSeek的技术原理,包括其架构设计、训练方法和优化策略,并结合代码实现进行详细讲解。 Transformer基础架构 DeepSeek基…

组件化 websocket

实时数据响应&#xff0c;组件化websocket减少代码冗余 组件定义 websocket.vue <template><div></div> </template><script>export default {data() {return {webSocket: null, // webSocket实例lockReconnect: false, // 重连锁&#xff0c;…

IBMS集成系统3D可视化数字孪生管理平台介绍、搭建、运维

IBMS集成系统3D可视化数字孪生管理平台介绍、搭建、运维 IBMS集成系统3D可视化数字孪生管理平台是一种先进的智能建筑管理系统&#xff0c;通过数字孪生技术和3D可视化界面&#xff0c;实现对建筑设施的全方位、智能化管理。该平台整合了物联网(IoT)、大数据、人工智能和三维建…

湖北理元理律师事务所:债务重组中的技术赋能与法律边界

一、当法律遇上算法&#xff1a;还款模型的进化 传统债务协商依赖律师经验&#xff0c;如今通过技术工具可实现&#xff1a; 输入&#xff1a;用户收入/债务/必需支出 输出&#xff1a; 1. 法定可减免金额&#xff08;基于LPR与历史判例库&#xff09;&#xff1b; 2.…

对抗串扰的第一武器

痕量分离;长度平行度;stackup&#xff1a;有没有一个脱颖而出&#xff1f; 我已经有一段时间没有看到关于串扰的文章了&#xff0c;所以我决定借此机会为那些可能对为什么精通串扰的 PCB 设计人员和硬件工程师使用各种设计规则来控制串扰感兴趣的 PCB 设计社区中的人简要介绍一…

FastAPI:(11)SQL数据库

FastAPI&#xff1a;(11)SQL数据库 由于CSDN无法展示「渐构」的「#d&#xff0c;#e&#xff0c;#t&#xff0c;#c&#xff0c;#v&#xff0c;#a」标签&#xff0c;推荐访问我个人网站进行阅读&#xff1a;Hkini 「渐构展示」如下&#xff1a; #c 概述 文章内容概括 #mermaid…

“智眸·家联“项目开发(一)

嵌入式开发调试知识点总结&#xff08;含操作流程&#xff09; 我们今天解决问题的过程&#xff0c;就像是侦探破案&#xff0c;从最表面的线索&#xff08;网络不通&#xff09;开始&#xff0c;一步步深入&#xff0c;最终找到了案件的核心&#xff08;硬件不匹配&#xff0…

展开说说Android之Retrofit详解_使用篇

Retrofit是由Square公司开发的类型安全HTTP客户端框架&#xff0c;借助动态代理在运行时生成接口实现类&#xff0c;将注解转化为OkHttp请求配置&#xff1b;节省成本通过转换器(Gson/Moshi)自动序列化JSON/XML&#xff0c;内部处理网络请求在主线程返回报文。Retrofit 直译是封…

复古美学浅绿色文艺风格Lr调色教程,手机滤镜PS+Lightroom预设下载!

调色介绍 复古美学浅绿色文艺风格 Lr 调色&#xff0c;是基于 Adobe Lightroom&#xff08;Lr&#xff09;软件&#xff0c;为摄影作品赋予特定艺术氛围的调色方式。通过合理设置软件中的各项参数与工具&#xff0c;把照片调整为以浅绿色为主调&#xff0c;融合复古元素与文艺气…