CSS盒子模型:网页布局的基石与艺术

一、什么是盒子模型?

每个HTML元素在浏览器中都被渲染为一个矩形盒子。CSS盒子模型描述了这些盒子如何构成:从内容区域开始,依次添加内边距、边框和外边距。理解盒子模型是掌握CSS布局的第一步。

想象一下俄罗斯套娃:

  • 最内层:内容(你真正想展示的东西)

  • 第二层:内边距(内容与边框之间的缓冲空间)

  • 第三层:边框(盒子的边界)

  • 最外层:外边距(盒子与其他盒子之间的距离)

二、盒子模型的组成部分

1. 内容区域(Content)

盒子最核心的部分,包含文本、图片等实际内容。

div { width: 200px; /* 内容区域的宽度 */ height: 150px; /* 内容区域的高度 */ background: #f0f0f0; }

2. 内边距(Padding)

内容区域与边框之间的空间,背景色会延伸到内边距区域

div { padding: 20px; /* 简写:四个方向都是20px */ /* 分别设置各边内边距 */ padding-top: 10px; padding-right: 15px; padding-bottom: 10px; padding-left: 15px; /* 简写的不同形式 */ padding: 10px; /* 上右下左都是10px */ padding: 10px 20px; /* 上下10px,左右20px */ padding: 10px 20px 15px; /* 上10px,左右20px,下15px */ padding: 10px 20px 15px 5px; /* 上10px,右20px,下15px,左5px */ }

3. 边框(Border)

围绕内容和内边距的边界线,可以设置样式、宽度和颜色。

div { /* 边框的三个属性 */ border-width: 2px; /* 边框宽度 */ border-style: solid; /* 边框样式:solid, dotted, dashed, double等 */ border-color: #333; /* 边框颜色 */ /* 简写形式 */ border: 2px solid #333; /* 分别设置各边边框 */ border-top: 1px dashed red; border-right: 2px solid blue; border-bottom: 3px dotted green; border-left: 4px double orange; /* 圆角边框 */ border-radius: 10px; border-radius: 50%; /* 圆形 */ }

4. 外边距(Margin)

盒子与其他盒子之间的空间,始终是透明的,不会显示背景。

div { margin: 20px; /* 四个方向都是20px */ /* 简写与padding相同 */ margin: 10px 20px; /* 上下10px,左右20px */ /* 特殊值 */ margin: 0 auto; /* 水平居中(左右auto平均分配) */ margin-top: -10px; /* 负外边距,元素会重叠 */ }

三、标准盒子模型 vs 替代盒子模型

这是盒子模型中最关键的区别!

1. 标准盒子模型(content-box)【默认】

元素的widthheight只包含内容区域的尺寸。

.box { box-sizing: content-box; /* 默认值 */ width: 200px; height: 100px; padding: 20px; border: 5px solid black; margin: 10px; }

实际占据空间计算:

  • 总宽度 =width+左右padding+左右border+左右margin

    • = 200 + 20*2 + 5*2 + 10*2 = 270px

  • 总高度 =height+上下padding+上下border+上下margin

    • = 100 + 20*2 + 5*2 + 10*2 = 170px

2. 替代盒子模型(border-box)

元素的widthheight包含内容+内边距+边框的尺寸。

.box { box-sizing: border-box; width: 200px; /* 这个200px包含了内容+padding+border */ height: 100px; padding: 20px; border: 5px solid black; margin: 10px; }

实际占据空间计算:

  • 总宽度 =width+左右margin

    • = 200 + 10*2 = 220px

  • 总高度 =height+上下margin

    • = 100 + 10*2 = 120px

内容区域实际尺寸:

  • 内容宽度 =width-左右padding-左右border

    • = 200 - 20*2 - 5*2 = 150px

  • 内容高度 =height-上下padding-上下border

    • = 100 - 20*2 - 5*2 = 50px

推荐使用border-box!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1178056.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

射频-驻波比的理解

驻波比等于1时候说明馈线和天线的阻抗完全匹配:此时高频能量全部辐射出去,没有能量反射损耗。 驻波比大于1时候,表示有一部分反射回来 驻波比无穷大时候:表示全反射,

Gemini CLI快速运维

Gemini CLI快速运维使用Google CLI 可以在服务器上使用命令行调用Gemini API,这样就可以让AI自主抉择,并且方便AI自己读取文件,读取日志,读取执行命令的输出信息,避免了人为频繁在服务器和WEB版AI之间来回复制、粘…

Linux 基础开发工具详解(Yum, Vim, GCC, Make, GDB, Git) - 指南

Linux 基础开发工具详解(Yum, Vim, GCC, Make, GDB, Git) - 指南2026-01-18 11:54 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !i…

组合螺丝专业供应商靠谱吗,东层紧固件有哪些信任背书? - 工业品牌热点

一、基础认知篇 问题1:什么是组合螺丝?专业供应商需要具备哪些核心能力? 组合螺丝是将螺丝、弹垫、平垫预组装成一体的紧固件,安装时无需单独装配垫圈,能大幅提升装配效率,广泛应用于汽车、电子、钣金、新能源等…

复合式分板机国内选哪个厂家的产品好? - 工业品牌热点

随着电子制造行业对PCBA分板精度、效率要求的不断提升,复合式分板机作为兼顾铣削与切割优势的核心设备,逐渐成为SMT、汽车电子、医疗器械等领域的刚需。本文围绕复合式分板机哪家技术成熟、源头工厂哪家好、国内厂家…

Godot Win32

Godot Win32Godot windows 上使用的是 Windows API 编程模型(也称为 Win32 API 编程) Win32 API 编程

极端天气数据集 恶劣天气数据集 雾天道路行驶数据集 黑夜情境下的交通数据集 红绿灯检测数据集 疲劳驾驶检测数据集 交通路锥检测数据集 路面标识交通引导线 车道线检测数据集]

1.植物病虫害类数据集 玉米叶片病虫害数据集 /玉米虫害数据集 水稻叶片及虫害/大豆/小麦/苹果/柑橘葡萄/南瓜/樱桃/荔枝/农业病虫害类等等等 ** 2.交通类数据集** 极端天气数据集 恶劣天气数据集 雾天道路行驶数据集 黑夜情境下的交通数据集 红绿灯检测数据集 疲劳驾驶检测数据…

芯片制造企业网页如何集成百度开源上传组件实现文件夹上传?

前端老炮的20G文件夹上传大冒险(附部分代码) 各位前端同仁们,我是老张,一个在辽宁苦哈哈写代码的"前端民工"。最近接了个活,客户要求用原生JS实现20G文件夹上传下载,还要支持IE9!这简…

14.2 去中心化协同与导航:基于LIVEPOINT框架的无死锁多机器人系统

14.2 去中心化协同与导航:基于LIVEPOINT框架的无死锁多机器人系统 14.2.1 引言:中心化规划的局限与去中心化自治的需求 多机器人系统在仓库物流、园区配送、工业巡检等场景中的应用潜力巨大。传统解决方案多采用集中式架构,由一个中央服务器为所有机器人计算全局最优路径。…

机械制造行业网页如何用html5实现文件夹上传?

大文件上传方案设计与实现(政府信创环境兼容) 方案背景 作为北京某软件公司的开发人员,我负责为政府客户实现一个兼容主流浏览器和信创国产化环境的大文件上传系统。当前需求是支持4GB左右文件的上传,后端使用PHP,前…

14.3 任务分配与协同操作:从市场拍卖到分布式优化的多机器人协作

14.3 任务分配与协同操作:从市场拍卖到分布式优化的多机器人协作 14.3.1 引言:多机器人系统中的任务分配问题 多机器人系统的效能不仅取决于单个机器人的能力,更关键的是如何将一组任务高效、合理地分配给群体中的成员,并协调它们之间的操作以避免冲突、发挥协同效应。这…

基于SpringBoot+Vue网络办公自动化系统的设计与实现

博主主页:一点源码 博主简介:专注Java技术领域和毕业设计项目实战、Java微信小程序、安卓等技术开发,远程调试部署、代码讲解、文档指导、ppt制作等技术指导。 技术范围:SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬…

15.1 机器人控制的伦理、安全与社会影响:技术成熟度伴随的责任审视

15.1 机器人控制的伦理、安全与社会影响:技术成熟度伴随的责任审视 15.1.1 引言:从技术可行性到社会可接受性 机器人技术,特别是具备自主决策与行动能力的先进机器人系统,正从受控的工业环境快速渗透至开放的公共空间与人类社会生活场景。这一演进将机器人控制的核心议题…

hadoop集群搭建 (超详细) 接入Impala、Hive,AI 大模型的数据底座 - 教程

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

仓库管理软件哪个好用,有没有最简单的出入库系统

常有人询问哪种仓库管理系统最为出色,或者哪一款是最佳选择。然而,从产品角度来看,并无绝对的最佳,只有最适合自身需求的系统。市面上仓库管理系统种类繁多,功能多样,操作简便与复杂并存,适用对…

15.2 技术融合与未来展望:AI、新材料与生物交叉驱动下的新形态与新能力

15.2 技术融合与未来展望:AI、新材料与生物交叉驱动下的新形态与新能力 15.2.1 引言:范式融合的必然性与驱动力 机器人技术的发展历来遵循一条清晰的主线:通过对感知、决策与执行能力的迭代升级,拓展其在物理世界中的作用范围与自…

skill-creator详细且实用的教程

下面是详细且实用的教程,教你怎么用 Github 上的 Anthropics Skills 仓库里的 skill-creator 来创建自己的 Claude Skills,这里面包括: ✅ 环境准备 ✅ 安装 skill-creator ✅ 使用示例(含完整提示词) ✅ 写 Skil…

研究生必看:导师让改AI率?这份超全攻略帮你顺利过关

研究生必看:导师让改AI率?这份超全攻略帮你顺利过关 TL;DR:导师让你改AI率?别急。这份攻略从理解检测原理到实操降AI,手把手教你搞定。核心工具推荐嘎嘎降AI(达标率99.26%)和比话降AI&#xff0…

2010-2025年上市公司数字化迎合指标数据

数据简介 在数字经济成为国家战略、政策激励持续加码的背景下,上市公司数字化转型逐渐成为市场关注焦点,但部分企业存在 “重披露、轻投入” 的 “迎合式转型” 现象,严重干扰了对转型实效的判断与政策效果的评估。数字化迎合指标&#xff0…

保姆级教程:5分钟学会用工具降低论文AIGC检测率

保姆级教程:5分钟学会用工具降低论文AIGC检测率 TL;DR:没时间看长文?5分钟速成版:打开嘎嘎降AI → 粘贴文本 → 付款 → 下载结果 → 替换原文。就这么简单,AI率从70%降到10%以下。 为什么写这篇5分钟教程 我知道你可…