2026-04-23 17:47:04
在 CSS Grid 布局中,align-items 控制网格项在交叉轴(默认垂直方向)的对齐,justify-items 控制主轴(默认水平方向)的对齐,两者用于统一设置所有网格项的对齐方式;若需单独调整某个网格项的对齐,可使用 align-self 和 justify-self。
一、align-items:控制交叉轴(垂直方向)对齐start:元素在交叉轴起点对齐(顶部)。
end:元素在交叉轴终点对齐(底部)。
center:元素在交叉轴居中对齐。
stretch:元素拉伸以填满整个单元格(默认值)。
start:元素在主轴起点对齐(左侧,LTR 模式下)。
end:元素在主轴终点对齐(右侧)。
center:元素在主轴方向居中。
stretch:元素拉伸填满单元格(默认值)。
轴方向的变化:
默认情况下,主轴为水平方向(行排列),交叉轴为垂直方向。
若通过 grid-auto-flow: column 改为列排列,主轴变为垂直方向,交叉轴变为水平方向。此时 justify-items 控制垂直对齐,align-items 控制水平对齐。
默认值:
align-items 和 justify-items 的默认值均为 stretch,即网格项会拉伸填满单元格。若需保持元素原始尺寸,需显式设置为 start、end 或 center。
优先级:
align-self 和 justify-self 的优先级高于容器设置的 align-items 和 justify-items。
书写模式影响:
在 direction: rtl(从右到左)或 writing-mode: vertical-rl(垂直从右到左)等模式下,主轴和交叉轴的方向可能变化,需根据实际布局调整对齐方式。