登录
首页 >  文章 >  前端

CSS中content-box与border-box区别详解

时间:2026-03-09 18:31:25 451浏览 收藏

CSS中的content-box与border-box是决定元素尺寸计算方式的核心概念:前者让width/height仅作用于内容区,导致padding和border额外增加总尺寸,易引发布局溢出;后者则将width/height视为包含内容、padding和border的整体边界,更贴合设计直觉、便于精准控制。现代开发强烈推荐全局启用box-sizing: border-box(如通过*通配符重置),从根本上提升响应式布局的稳定性和可维护性——选对盒模型,就是为高效、可靠的页面布局打下第一块基石。

如何在CSS中区分content-box与border-box_box-sizing理解差异

在CSS中,content-boxborder-boxbox-sizing 属性的两个主要值,它们决定了元素的宽度和高度如何计算。理解它们的差异对精确控制布局至关重要。

content-box:默认的盒模型

box-sizing: content-box 时,元素的 widthheight 只包含内容区域,不包括内边距(padding)和边框(border)。

这意味着:

  • 设置 width: 200px; padding: 20px; border: 5px solid;
  • 实际占用的总宽度 = 200 + 20×2 + 5×2 = 250px

容易导致布局超出预期,尤其是在响应式设计中。

border-box:更直观的盒模型

box-sizing: border-box 时,元素的 widthheight 包含了内容、内边距和边框。

例如:

  • 设置 width: 200px; padding: 20px; border: 5px solid;
  • 内容区会自动压缩为 150px(200 - 40 - 10),确保整体宽度仍为200px

这种模式更符合视觉上的“我想要一个200px宽的盒子”的直觉。

如何选择与应用

多数现代项目推荐全局使用 border-box,避免布局错位。

常用重置方式:

*, *::before, *::after {
  box-sizing: border-box;
}

这样所有元素都采用 border-box 模型,便于统一控制尺寸。

基本上就这些。关键在于明白 width 到底“包不包含” padding 和 border —— content-box 不包含,border-box 包含。选对了,布局更可控。

今天关于《CSS中content-box与border-box区别详解》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于的内容请关注golang学习网公众号!

资料下载
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>