2021-10-25 12:02:14
CSS实现居中对齐布局的核心方法包括水平居中、垂直居中和完全居中,具体选择取决于元素类型和布局需求。以下是详细分类说明:
一、水平居中对齐内联元素(文本、图片等)通过父容器设置text-align: center实现水平居中。
.parent { text-align: center;}块级元素需满足两个条件:
指定固定宽度(如width: 50%);
设置左右外边距为auto。
.block-element { width: 50%; margin: 0 auto;}单行文本将容器高度与line-height设为相同值,使文本垂直居中。
.container { height: 40px; line-height: 40px;}Flexbox布局通过align-items: center实现垂直居中,需指定容器高度。
.container { display: flex; align-items: center; height: 200px;}绝对定位 + Transform适用于脱离文档流的元素(如浮动弹窗),通过top: 50%和transform: translateY(-50%)实现垂直居中。
.parent { position: relative;}.child { position: absolute; top: 50%; transform: translateY(-50%);}Flexbox布局(推荐)同时设置justify-content: center和align-items: center,代码简洁且兼容性好。
.container { display: flex; justify-content: center; align-items: center; height: 100vh; /* 视口高度 */}绝对定位 + Transform通过top: 50%、left: 50%和transform: translate(-50%, -50%)实现完全居中,适合固定定位场景(如模态框)。
.parent { position: relative;}.child { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}Grid布局使用place-items: center(justify-items和align-items的简写)实现完全居中,适合复杂布局结构。
.container { display: grid; place-items: center; height: 100vh;}根据实际场景选择合适方法,例如: