CSS Grid 是 CSS3 引入的二维布局模式,通过行和列的组合实现灵活的网格布局。它解决了传统布局方式的局限性,成为现代网页设计的核心技术之一。
核心概念 📜
- 容器:使用
display: grid
定义网格容器,所有子元素自动成为网格项 - 行和列:通过
grid-template-rows
和grid-template-columns
设置尺寸 - 自动布局:
auto-fit
和auto-fill
实现响应式伸缩 - 区域划分:
grid-template-areas
定义命名区域(如:"header" "main sidebar"
) - 定位:
grid-row
和grid-column
控制项的位置
基础用法 💡
.container {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 10px;
}
repeat(3, 1fr)
:创建3列等宽布局gap
:设置网格项间距fr
单位:分配剩余空间
实用技巧 📌
- 使用
grid-auto-rows
自动调整行高 - 通过
place-items: center
实现居中对齐 - 响应式设计:
@media (max-width: 600px) { .container { grid-template-columns: 1fr; } }
- 嵌套网格:容器内可嵌套子网格实现复杂结构
优势对比 📈
传统布局 | CSS Grid |
---|---|
需要浮动/定位 | 原生支持二维布局 |
难以实现响应式 | auto-fit 简化响应式设计 |
代码冗余 | 简洁的语法实现复杂布局 |
扩展学习 🌐
点击了解 CSS Grid 详细教程
查看 CSS Grid 实战案例