“让一个盒子居中”大概是前端面试里最古老的问题之一。
二、经典方案回顾
早年间用 table 布局天然居中;后来用 margin auto 配合定宽;再后来 absolute 加负 margin 依赖已知尺寸。
.box { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }三、现代写法
flex 让未知尺寸的居中变成一行代码:父容器 display:flex + align-items/justify-content:center;grid 的 place-items 同样干脆。
方案没有优劣,适合场景的就是好的。