如何使用CSS Grid?

使用 CSS Grid 核心分两步:先给父容器定义网格规则,再给子项目设置位置或尺寸,3行代码即可实现基础布局。

  1. 定义网格容器(父元素)

给父容器添加 display: grid ,并通过以下属性规划网格结构:

  • grid-template-columns :定义列数和列宽(核心),例如 grid-template-columns: 100px 1fr 2fr 表示"1列固定100px,1列占1份,1列占2份"。

  • grid-template-rows :定义行数和行高,例如 grid-template-rows: 50px auto 表示"1行固定50px,1行自适应内容"。

  • gap :快速设置网格项目间的间距(替代 margin),例如 gap: 10px 。

  1. 控制网格项目(子元素)

无需额外代码,子元素会自动填充网格;也可手动定位:

  • grid-column :控制项目占几列,例如 grid-column: 1 / 3 表示"从第1列开始,到第3列结束(占2列)"。

  • grid-row :控制项目占几行,例如 grid-row: 2 / 4 表示"从第2行开始,到第4行结束(占2行)"。

示例:3列2行网格

/* 父容器:3列(等宽)、2行(50px+自适应)、间距10px */

.grid-container {

display: grid;

grid-template-columns: 1fr 1fr 1fr; /* 3等宽列 */

grid-template-rows: 50px auto; /* 2行 */

gap: 10px;

}

/* 子项目:默认自动填充,也可手动定位 */

.grid-item:nth-child(1) {

grid-column: 1 / 3; /* 第1个项目占前2列 */

}

相关推荐
燕落南枝2 小时前
CSS 后代选择器与子代选择器:从入门到实战
前端·css
王大师王文峰1 天前
HTML 入门到进阶:语义化标签、表单与多媒体一篇打通【语义化布局、表单校验、video/audio、Canvas、无障碍与 SEO】
前端·css·node.js·html·css3·jquery·html5
晓得迷路了2 天前
栗子前端技术周刊第 150 期 - Stack Overflow 开发者调查结果、TanStack Start 1.0...
javascript·css·后端
ShineWinsu4 天前
对于CSS:弹性布局(Flexbox)的解析
前端·css·面试·浏览器·web·网页·弹性布局
云老大-阿里云国际站代理商4 天前
华为云国际站渠道代理商:CSS查询很慢但CPU不高?磁盘I/O、JVM与分片问题怎么排查
css·jvm·华为云
定栓4 天前
Webpack迁到Vite第三节:Less 与 CSS 处理
css·webpack·less
ShineWinsu4 天前
对于JavaScript:初识JavaScript以及输入输出
java·开发语言·前端·javascript·css·面试·html
码银4 天前
【web】基于HTML/CSS,JavaScript + Three.js做3D流程图
前端·css·html
keyipatience5 天前
JavaScript学习(1)书写位置,变量、数据类型、运算符
开发语言·前端·javascript·css·学习
酷炫码神5 天前
Day 2|CSS 盒模型:把昨天的骨架,变成能看的页面
前端·css