2025-11-13 09:52:34
你先看父div得先有固定宽度,然后子div用margin自动居中。比如父div写width:200px,子div写margin-left:50%和margin-right:50%。这样子div左边和右边各留50%的空隙,正好卡在中间。要是父div没固定宽度,子div就会撑满父div,自然居中了。但要是里面还有多个div,得给父div加overflow-x: hidden,不然会撑开父div宽度。
为啥是这个答案呢?因为margin自动居中原理是浏览器自动计算左右边距。当父div宽度固定时,子div总宽度是父div的50%,所以左右各留50%刚好居中。数据证明:父div width300px,子div margin50%会自动留150px左右,正好卡在中间。要是父div没固定,子div会继承父div的宽度,比如父div100%,子div50%,总宽度50%就会撑满父div。但遇到多个子div时,父div会自动扩展到所有子div总宽度,这时候加overflow-x隐藏就能控制父div宽度,让子div正常居中。所以关键步骤是固定父div宽度+子divmargin自动居中+处理多个子div的扩展问题。
本题链接: