第 9 课 4 / 25 | 编码:L09-08
核心知识

border-box:把内边距和边框算进 width

只改变 box-sizing,其他数值不变。声明的 300px 现在约束的是边框盒。

.card {
  box-sizing: border-box;
  width: 300px;
  padding: 20px;
  border: 5px solid teal;
}

仍作用于同一张 .card 活动卡片。

先固定外框,再向内扣除

边框盒宽度:300px
520250205
内容区:300 − 40 − 10 = 250px

margin 仍在边框之外。border-box 不等于“永远不会溢出”。

补充:常见的统一设置
*, *::before, *::after {
  box-sizing: border-box;
}

* 匹配元素,后两项覆盖生成的伪元素。这是主动设置的页面规则,不是所有元素天然都使用 border-box。

展开完整代码与运行演示
<!doctype html>
<html lang="zh-CN">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>黄梅戏分享会</title>
  <style>
    .card {
      box-sizing: border-box;
      width: 300px;
      padding: 20px;
      border: 5px solid teal;
    }
  </style>
</head>
<body>
  <div class="card">黄梅戏分享会</div>
</body>
</html>