Menu
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

CSS 教程

CSS 首页 CSS 简介 CSS 语法 CSS 选择器 CSS 如何做 CSS 注释 CSS 颜色 CSS 背景 CSS 边框 CSS 外边距 CSS 内边距 CSS 高度/宽度 CSS 盒模型 CSS 轮廓 CSS 文本 CSS 字体 CSS 图标 CSS 链接 CSS 列表 CSS 表格 CSS 显示 CSS 最大宽度 CSS 定位 CSS Z-index CSS 溢出 CSS 浮动 CSS 行内块 CSS 对齐 CSS 组合器 CSS 伪类 CSS 伪元素 CSS 不透明度 CSS 导航栏 CSS 下拉菜单 CSS 图片库 CSS 图片精灵 CSS 属性选择器 CSS 表单 CSS 计数器 CSS 网站布局 CSS 单位 CSS 特定性 CSS !important CSS 数学函数

CSS 高级

CSS 圆角 CSS 边框图片 CSS 背景 CSS 颜色 CSS 颜色关键字 CSS 渐变 CSS 阴影 CSS 文本效果 CSS 网页字体 CSS 2D 变换 CSS 3D 变换 CSS 过渡 CSS 动画 CSS 提示框 CSS 样式图片 CSS 图片反射 CSS object-fit CSS object-position CSS 遮罩 CSS 按钮 CSS 分页 CSS 多列 CSS 用户界面 CSS 变量 CSS @property CSS 盒模型 CSS 媒体查询 CSS 媒体查询示例 CSS Flexbox

CSS 响应式

RWD 简介 RWD 视窗 RWD 网格视图 RWD 媒体查询 RWD 图片 RWD 视频 RWD 框架 RWD 模板

CSS Grid

Grid 简介 Grid 容器 Grid 项目

CSS SASS

SASS 教程

CSS 示例

CSS 模板 CSS 示例 CSS 编辑器 CSS 代码片段 CSS 测验 CSS 练习 CSS 网站 CSS 面试准备 CSS 集训营 CSS 证书

CSS 参考

CSS 参考 CSS 选择器 CSS 函数 CSS 参考听觉 CSS 网络安全字体 CSS 可动画 CSS 单位 CSS PX-EM 转换器 CSS 颜色 CSS 颜色值 CSS 默认值 CSS 浏览器支持

CSS 盒模型


CSS 盒模型

CSS 的 box-sizing 属性允许我们将内边距和边框包含在元素的总宽度和高度中。


没有 CSS 盒模型属性

默认情况下,元素的宽度和高度计算如下

宽度 + 内边距 + 边框 = 元素的实际宽度
高度 + 内边距 + 边框 = 元素的实际高度

这意味着:当您设置元素的宽度/高度时,元素通常看起来比您设置的更大(因为元素的边框和内边距会添加到元素指定的宽度/高度中)。

以下图示显示了两个具有相同指定宽度和高度的 <div> 元素

此 div 较小(宽度为 300px,高度为 100px)。

此 div 较大(宽度也为 300px,高度为 100px)。

上面的两个 <div> 元素在结果中最终具有不同的尺寸(因为 div2 指定了内边距)

示例

.div1 {
  width: 300px;
  height: 100px;
  border: 1px solid blue;
}

.div2 {
  width: 300px;
  height: 100px;
  padding: 50px;
  border: 1px solid red;
}
亲自尝试 »

box-sizing 属性解决了这个问题。



使用 CSS 盒模型属性

box-sizing 属性允许我们将内边距和边框包含在元素的总宽度和高度中。

如果您将 box-sizing: border-box; 设置为元素,则内边距和边框将包含在宽度和高度中

现在两个 div 的尺寸都相同!

太好了!

以下是与上面相同的示例,其中 box-sizing: border-box; 添加到两个 <div> 元素

示例

.div1 {
  width: 300px;
  height: 100px;
  border: 1px solid blue;
  box-sizing: border-box;
}

.div2 {
  width: 300px;
  height: 100px;
  padding: 50px;
  border: 1px solid red;
  box-sizing: border-box;
}
亲自尝试 »

由于使用 box-sizing: border-box; 的结果要好得多,因此许多开发人员希望他们页面上的所有元素都能以这种更直观的方式工作。

以下代码确保所有元素都以这种更直观的方式进行尺寸调整。许多浏览器已经为许多表单元素使用 box-sizing: border-box;(但并非所有 - 这就是为什么输入和文本区域在 width: 100%; 时看起来不同的原因)。

将其应用于所有元素是安全和明智的

示例

* {
  box-sizing: border-box;
}
亲自尝试 »

CSS 盒模型属性

属性 描述
box-sizing 定义元素宽度和高度的计算方式:是否包含内边距和边框。

×

Contact Sales

If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail:
[email protected]

Report Error

If you want to report an error, or if you want to make a suggestion, send us an e-mail:
[email protected]

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookie and privacy policy.

Copyright 1999-2024 by Refsnes Data. All Rights Reserved. W3Schools is Powered by W3.CSS.