place-items是CSS Grid中用于同时设置align-items和justify-items的简写属性,可统一网格项在单元格内的对齐方式。支持start、end、center、stretch等取值,单值时双向同效,双值时分别定义垂直和水平对齐。常用于卡片网格、仪表盘等需内容居中的布局场景,结合媒体查询可实现响应式对齐调整,提升代码简洁性与维护效率。

place-items 是 CSS Grid 布局中的一个简写属性,用于同时设置 align-items(沿行轴的对齐方式)和 justify-items(沿列轴的对齐方式)。它能快速统一网格容器中所有项目在各自网格区域内的对齐行为,是提升布局控制效率的重要工具。
place-items 语法与取值
该属性接受一到两个值:
• 单个值:同时应用于 align-items 和 justify-items• 两个值:第一个为 align-items,第二个为 justify-items
常用取值包括:
- start:元素对齐网格区域起始边
- end:对齐结束边
- center:居中对齐
- stretch:拉伸以填满整个区域(默认值)
示例:
立即学习“前端免费学习笔记(深入)”;
.container {
display: grid;
grid-template-columns: 1fr 1fr;
grid-template-rows: 100px 100px;
place-items: center; /* 水平垂直都居中 */
}
在实际布局中的应用
常见于需要统一内容对齐方式的场景,比如仪表盘、卡片网格或表单布局。
例如创建一个卡片面板,希望每张卡片内容都在其格子内居中:
.dashboard {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-template-rows: repeat(2, 80px);
place-items: center;
gap: 10px;
}
.card {
background: #f0f0f0;
border: 1px solid #ccc;
}
此时所有 .card 元素的内容都会在其网格单元中水平垂直居中。
与单个对齐属性的配合使用
若需更精细控制,可在使用 place-items 设定基础对齐后,单独覆盖某个方向。
.container {
display: grid;
place-items: center end; /* 垂直居中,水平靠右 */
}
也可在具体项目上用 align-self 或 justify-self 覆盖:
.item-special {
justify-self: start; /* 覆盖全局设置,左对齐 */
}
响应式设计中的灵活运用
结合媒体查询,可动态调整对齐策略:
.grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
place-items: stretch; /* 默认拉伸高度 */
}
@media (max-width: 768px) {
.grid {
place-items: center; / 小屏时居中内容 /
}
}
这在移动端避免高度不一致导致视觉割裂很有帮助。
基本上就这些。合理使用 place-items 可大幅减少重复样式代码,让 Grid 布局更简洁清晰。注意它只作用于网格项内部对齐,不影响网格轨道本身的位置。










