内容盒子模型:
这是W3C的标准模型,元素的宽度和高度只包括内容区域,不包括内边距、边框和外边距。也就是说,设置width和height只是内容区域的尺寸。
边框盒子模型:
元素的宽度和高度包括内容区域、内边距和边框。设置width和height是包含padding和border在内的总尺寸。
主要区别:
-
标准模型:width = 内容宽度
-
IE模型:width = 内容宽度 + padding + border
CSS控制:
可以通过box-sizing属性来控制使用哪种模型:
-
content-box:标准模型
-
border-box:IE模型
实际应用:
现在开发中通常使用border-box,因为这样更容易控制元素的实际尺寸,不需要手动计算padding和border的影响。
兼容性:
现代浏览器都支持box-sizing属性,可以统一使用border-box来避免盒子模型的差异问题。
理解盒子模型对布局和尺寸控制非常重要。