grid-auto-rows用于设置网格中隐式创建行的高度,实现等高行布局。通过设定固定值、fr单位或minmax()函数,可统一行高并适应内容变化,适用于不确定行数的场景。

在 CSS Grid 布局中,grid-auto-rows 可以用来控制自动创建的行的高度。当你不确定网格中有多少行,但仍希望所有行保持相同高度时,这个属性非常有用。通过设置 grid-auto-rows,可以轻松实现等高行的效果。
什么是 grid-auto-rows?
grid-auto-rows 用于定义网格容器中隐式创建的行的高度。当网格项的数量超出显式定义的行数时,浏览器会自动创建新行,这些就是隐式行。通过设置该属性,可以让这些自动行具有统一高度。
如何用 grid-auto-rows 实现等高行?
要实现等高行,只需在网格容器上设置 grid-auto-rows 为一个固定值或弹性单位:
- 使用固定高度(如
100px)让每行都一样高 - 使用
1fr让每行平均分配可用空间 - 结合
minmax()控制最小和最大高度
示例代码:
立即学习“前端免费学习笔记(深入)”;
.container {
display: grid;
grid-template-columns: 1fr 1fr; /* 两列 */
grid-auto-rows: 100px; /* 所有自动创建的行高度为 100px */
}
这样,无论有多少个子元素,每一行都会是 100px 高,实现等高行布局。
使用 minmax 实现更灵活的等高行
如果希望行高随内容自适应但又不小于某个值,可以用 minmax():
.container {
display: grid;
grid-template-columns: 1fr 1fr;
grid-auto-rows: minmax(80px, auto); /* 最小 80px,内容多时可增高 */
}
这种方式既保证了最小高度,又允许内容撑开,适合文本长度不一的场景。
基本上就这些。用 grid-auto-rows 设置统一高度,就能让 Grid 中的行保持等高,布局更整齐。关键是理解它作用于隐式生成的行,配合 fr、固定值或 minmax 能满足大多数需求。不复杂但容易忽略细节。










