使用display: flex、align-items: center和justify-content: center可高效实现元素水平垂直居中,需确保父容器有明确高度,适用于响应式布局且兼容性良好。

在css中使用flex布局实现垂直居中非常高效且兼容性良好。只需几行代码,就能让子元素在父容器中水平和垂直居中。关键在于正确使用 display: flex 及其相关对齐属性。
启用Flex布局
要使用Flex进行居中,首先需要将父容器设置为Flex容器:
display: flex;
这一步激活了Flexbox布局模型,使子元素成为弹性项目,从而可以使用对齐属性控制它们的位置。
使用align-items实现垂直居中
align-items 控制交叉轴(通常为垂直方向)上的对齐方式。要实现垂直居中,设置:
立即学习“前端免费学习笔记(深入)”;
align-items: center;
当容器是横向主轴(默认 flex-direction: row)时,align-items: center 会让子元素在纵向上居中对齐。
使用justify-content实现水平居中
若还需水平居中,使用 justify-content 属性:
justify-content: center;
该属性控制主轴方向的对齐。结合 justify-content: center 和 align-items: center,即可实现完全居中。
完整示例:
.container {
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
}
这个容器会将其内部的子元素在视口中央居中显示,无论内容大小如何。
注意事项与技巧
确保父容器有明确的高度(如 height: 100vh 或固定值),否则 align-items: center 可能无法生效。
Flex居中适用于单个或多个子元素,且支持响应式设计,无需知道子元素的具体尺寸。
基本上就这些,不复杂但容易忽略细节。