CSS居中布局大全:10种方法实现水平垂直居中,总有一种适合你
🧑🏫 作者:全栈老李
📅 更新时间:2025 年 5 月
🧑💻 适合人群:前端初学者、进阶开发者
🚀 版权:本文由全栈老李原创,转载请注明出处。
作为前端工程师,你一定遇到过这样的场景:产品经理指着设计稿说"这个弹窗要居中显示",而你在Chrome调试器里疯狂尝试margin: auto却死活不生效。别担心,今天全栈老李就带你彻底攻克这个前端界的"哥德巴赫猜想"——CSS居中布局。(文末有面试题彩蛋,记得看到最后哦~)
为什么居中这么难?
就像让一个社恐人士在年会上C位表演一样,CSS元素要实现完美居中也需要克服重重阻力。父元素的尺寸不确定、子元素尺寸动态变化、浏览器兼容性...这些因素让简单的居中需求变成了前端面试必考题。不过别慌,老李这就掏出压箱底的10种解决方案。
基础篇:定宽高元素的居中
1. absolute + 负margin
.parent {
position: relative;
height: 300px; /* 全栈老李提示:父元素需要明确高度 */
}
.child {
position: absolute;
width: 100px;
height: 100px;
top: 50%;
left: 50%;
margin-top: -50px; /* 高度的一半 */
margin-left: -50px; /* 宽度的一半 */
}
这就像用卷尺测量——先走到房间正中间(50%),再往回退半个身位(负margin)。缺点很明显:必须知道子元素具体尺寸。
2. absolute + margin auto
.child {
position: absolute;
width

最低0.47元/天 解锁文章
3036

被折叠的 条评论
为什么被折叠?



