信息发布→ 登录 注册 退出

css新手项目如何实现九宫格_使用grid repeat快速布局

发布时间:2026-01-08

点击量:
用 CSS Grid 的 repeat(3, 1fr) 可简洁实现 3×3 九宫格布局,无需设置子项宽高,配合 gap、响应式媒体查询和基础样式增强即可快速完成自适应九宫格。

用 CSS Grid 的 repeat() 函数实现九宫格,是新手练手的极佳选择——代码简洁、逻辑清晰、响应式友好。

一、九宫格的本质就是 3×3 网格

九宫格即 3 行 × 3 列的等分布局。Grid 布局中,只需定义容器为 display: grid,再用 repeat(3, 1fr) 同时设置行和列,就能让 9 个子元素自动均匀填满。

关键点:

  • 1fr 表示每列/行占剩余空间的 1 份,3 个 1fr 就是均分
  • repeat(3, 1fr) 等价于 1fr 1fr 1fr,更简洁不易出错
  • 不需要给子项单独设宽高,Grid 自动分配空间

二、基础 HTML + CSS 实现(5 行搞定)

HTML 结构保持最简:一个容器包裹 9 个子元素(如 div):

立即学习“前端免费学习笔记(深入)”;

  123
  456
  789

CSS 部分:

.grid-9 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(3, 1fr);
  gap: 8px; /* 单元格间距,可选 */
}

✅ 效果立现:9 个格子等宽等高,自适应容器大小。

三、加点实用增强(新手易上手)

让九宫格更可用、更美观,只需几行追加样式:

  • 加边框或背景色:div.grid-9 > div { background: #f0f0f0; border-radius: 4px; padding: 12px; text-align: center; }
  • 居中文字+垂直对齐:display: flex; align-items: center; justify-content: center;
  • 响应式优化(小屏变单列):@media (max-width: 480px) { .grid-9 { grid-template-columns: 1fr; grid-template-rows: repeat(9, auto); } }

四、常见问题提醒

新手常踩的小坑:

  • 忘记给容器设 display: grid —— 其他属性全无效
  • 误写成 repeat(3, 1fr 1fr 1fr) —— 会生成 9 列,不是 3 列
  • 子元素数量 ≠ 9 时,Grid 仍按 3×3 排列,空位留白(可配合 grid-auto-flow: dense 重排,但新手建议先保证数量准确)

不复杂但容易忽略,写完检查两眼就稳了。

标签:# 九宫格  # 极佳  # 要给  # 两眼  # 再用  # 不需  # 可选  # 能让  # 自适应  # 只需  # css  # flex  # background  # border  # padding  # display  # auto  # 排列  # 常见问题  # html  
在线客服
服务热线

服务热线

4008888355

微信咨询
二维码
返回顶部
×二维码

截屏,微信识别二维码

打开微信

微信号已复制,请打开微信添加咨询详情!