使用 box-sizing: border-box 可直观控制盒子总宽度。默认 content-box 模式下,总宽度 = width + padding + border;而 border-box 模式下,width 已包含 padding 和 border,总宽度即为设置值,内容区自动调整。推荐全局设置 * { box-sizing: border-box; } 以统一布局行为,避免溢出问题。
在CSS中,一个盒子的总宽度(包括内容、内边距和边框)可以通过 box-sizing 属性来更直观地控制。默认情况下,元素的宽度只设置内容区域的宽度,而 padding 和 border 会额外增加总宽度。
默认情况下(box-sizing: content-box),总盒子宽度计算方式为:
将 box-sizing 设置为 border-box 后,width 值就包含了 padding 和 border,浏览器会自动从内容区域中扣除这部分空间。
这样可以更容易地控制布局,避免超出容器。
为了统一处理盒模型,推荐在全局重置样式中加入:
* {
box-sizing: border-box;
}
这样所有元素都按包含 padding 和 border 的方式计算宽度,减少意外溢出问题。
基本上就这些,用 box-sizing: border-box 能让宽度控制更直观可靠。不复杂但容易忽略。