前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >CSS核心概念之盒子模型

CSS核心概念之盒子模型

作者头像
用户6167509
发布于 2020-03-18 12:35:00
发布于 2020-03-18 12:35:00
1.1K00
代码可运行
举报
文章被收录于专栏:一路向前端一路向前端
运行总次数:0
代码可运行

盒子模型(Box Model)

关于更多CSS核心概念的文章请关注GitHub——CSS核心概念

当对一个文档进行布局的时候,浏览器的渲染引擎会根据标准之一的 CSS 基础框盒模型(CSS basic box model),将所有元素表示为一个个矩形的盒子。所有 HTML 元素可以看作盒子,在 CSS 中,Box Model 这一术语是用来设计和布局时使用。

CSS 盒模型本质上是一个盒子,封装周围的 HTML 元素,每个盒子由四个部分(或称区域)组成:内容(Content)内边距(Padding)边框(Border)外边框(Margin)盒模型允许我们在其它元素和周围元素边框之间的空间放置元素。

下面的图片说明了盒子模型(Box Model)

CSS 盒模型不同组成部分的说明:

  • Content(内容) - 由内容边界限制,容纳着元素的“真实”内容,例如文本、图像,或是一个视频播放器。
  • Padding(内边距) - 由内边距边界限制,扩展自内容区域,负责延伸内容区域的背景,填充元素中内容与边框的间距。当其取值为百分比时,该百分比都是相对于包含该元素的块的宽度(相对于该块的百分比)。
  • Border(边框) - 由边框边界限制,扩展自内边距区域,是容纳边框的区域。即围绕在内边距和内容外的边框。
  • Margin(外边距) - 由外边距边界限制,用空白区域扩展边框区域,以分开相邻的元素。当其取值为百分比时,该百分比都是相对于包含该元素的块的宽度(相对于该块的百分比)。

标准盒模型与怪异盒模型

盒子模型分为两种:第一种是 W3C 标准的盒子模型(标准盒模型) 、第二种 IE 标准的盒子模型(怪异盒模型)

当前大部分的浏览器支持的是 W3C 的标准盒模型,也保留了对怪异盒模型的支持,当然 IE 浏览器沿用的是怪异盒模型怪异模式是“部分浏览器在支持 W3C 标准的同时还保留了原来的解析模式”,怪异模式主要表现在 IE 内核的浏览器。

标准盒模型怪异盒模型的表现效果的区别:

  • 标准盒模型中 width 指的是内容(Content)区域的宽度;height 指的是内容(Content)区域的高度。标准盒模型下盒子的大小 = width + Border + Padding + Margin。
  • 怪异盒模型中的 width 指的是内容(Content)、边框(Border)、内边距(Padding)总和的宽度,即 width = Content + Border + Padding;height 指的是内容(Content)、边框(Border)、内边距(Padding)总和的高度。怪异盒模型下盒子的大小 =width + Margin

注意W3C 的标准盒模型IE 怪异盒模型主要区别是:盒模型中的 width 是否包含 border 和 padding。W3C 的标准盒模型的 width 不包含 border 和 padding,而IE 怪异盒模型的 width 中包含 border 和 padding。

浏览器如何解析盒模型

如果是定义了完整的 doctype 的标准文档类型,无论是哪种模型情况,最终都会触发标准模式,如果 doctype 协议缺失,会由浏览器自己界定,在 IE 浏览器中 IE9 以下(IE6、IE7、IE8)的版本触发怪异模式,其他浏览器中会默认为 W3C标准模式

设置盒模型解析模式

我们还可以通过设置 HTML 元素的 box-sizing 来设置盒子模型的解析模式

box-sizing 的属性值:

  • content-box: 默认值,border 和padding 不算到 width 范围内,可以理解为是 W3C 的标准模型
  • border-box:border 和 padding 划归到 width 范围内,可以理解为是 IE 的怪异盒模型
  • padding-box:将 padding 算入 width 范围

当设置为 box-sizing: content-box 时,将采用标准模式解析计算(默认模式),当设置为 box-sizing: border-box 时,将采用怪异模式解析计算。如:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!-- 将 div 设置为怪异盒模型解析模式 -->
<div style="box-sizing: border-box;"></div>

关于更多CSS核心概念的文章请关注GitHub——CSS核心概念

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-03-17 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
CSS篇-面试题1-画一下盒子模型
组件是一种对html 元素数据的封装,对原生 html标签元素的一种拓展,但底层核心依旧依赖DIV+CSS
itclanCoder
2020/10/28
1.1K0
CSS盒子模型
所有的HTML元素都可以看作是一个盒子 将盒子模型拆分,则包括 外边距+边框+填充+内容 显得专业一些,box model = margin+border+padding+content
WindRunnerMax
2020/08/27
7760
CSS盒子模型
前言 盒子模型(box model)是css中的一个重要概念,它是元素大小的呈现方式 every element in web design is a rectangular box 正文 下面
pitaojin
2018/05/25
1.3K0
CSS 盒子模型(Box Model)
内容区(content) 内容区是盒子模型的中心,它呈现了盒子的主要信息内容,这些内容可以是文本、图片等多种类型。内容区有三个属性,width、height 和overflow。使用width和height属性可以指定盒子内容区的高度和宽度,当内容信息太多,超出内容区所占范围时,可以使用overflow 溢出属性来指定处理方法。当overflow 属性值为hidden时,溢出部分将不可见;为visible时,溢出的内容信息可见,只是被呈现在盒子的外部;当为scroll时,滚动条将被自动添加到盒子中,用户可以通过拉动滚动条显示内容信息;当为auto时,将由浏览器决定如何处理溢出部分。
刘亦枫
2020/03/19
1.3K0
CSS 盒子模型(Box Model)
css面试点一:盒模型详解+遗漏点
可以说,页面就是由一个个盒模型堆砌起来的,每个HTML元素都可以叫做盒模型,盒模型由外而内包括:边距(margin)、边框(border)、填充(padding)、内容(content)。它在页面中所占的实际宽度是margin + border + paddint + content 的宽度相加。
用户10106350
2022/10/28
4540
css面试点一:盒模型详解+遗漏点
盒子模型(CSS重点)
其实,CSS就三个大模块: 盒子模型 、 浮动 、 定位,其余的都是细节。要求这三部分,无论如何也要学的非常精通。
星辰_大海
2020/09/30
1.6K0
深入解析CSS盒子模型:构建网页布局的核心概念
当涉及到网页设计和排版时,CSS盒子模型是一个非常重要的概念。理解盒子模型是构建网页布局的关键,它定义了元素在网页中的尺寸和排列方式。在本文中,我们将深入探讨CSS盒子模型的各个方面,包括它的基本构成、如何影响元素的布局和尺寸,以及如何在实际项目中应用它。
海拥
2023/09/15
5810
深入解析CSS盒子模型:构建网页布局的核心概念
盒子模型
盒模型(box model)是CSS中的一个重要概念,它是元素大小的呈现方式。需要记住的是:"every element in web design is a rectangular box"。在此我们根据box-sizing的常用值来描述盒模型。 **box-sizing **属性用于更改用于计算元素宽度和高度的默认的 CSS 盒子模型。可以使用此属性来模拟不正确支持CSS盒子模型规范的浏览器的行为。 content-box 默认值,标准盒子模型。 width与height只包括内容的宽和高, 不
听城
2018/04/27
1.2K0
【CSS】410- 关于CSS盒子模型、BFC及其应用
把所有 HTML 元素都看作是一个 盒子(Box), 这个盒子包着一层又一层, 这就是盒模型.
pingan8787
2019/11/14
6540
盒模型和box-sizing
根据 W3C 的规范,元素内容占据的空间是由 width 属性设置的,而内容周围的 padding 和 border 值是另外计算的。不幸的是,IE5.X 和 6 在怪异模式中使用自己的非标准模型。这些浏览器的 width 属性不是内容的宽度,而是内容、内边距和边框的宽度的总和。
FinGet
2019/06/28
7970
盒模型和box-sizing
[Java小工匠]CSS盒子模型-概述
  在HTML文档中任何元素,都可以看作是一个盒子,因此理解盒子模型非常重要。一个盒子包含 盒子的内容、盒子内边距、盒子的边框、盒子的外边距。
Java小工匠
2018/08/10
7630
[Java小工匠]CSS盒子模型-概述
【CSS】5分钟带你彻底搞懂 W3C & IE 盒模型!
大家好,我是HoMeTown,CSS是作为前端必有技术栈之一,但是有很多同学其实对CSS的盒模型都不是很了解,今天想聊一下Css盒子模型。
HoMeTown
2022/10/26
8410
【CSS】5分钟带你彻底搞懂 W3C & IE 盒模型!
盒子模型
CSS盒子模型(Box Model)。在所有的HTML元素都可以看成一个盒子;在CSS中,Box Model这一术语被用来设计和布局中使用。
肥晨
2023/02/16
6740
CSS3 介绍
原文链接:https://note.noxussj.top/?source=cloudtencent 什么是 CSS3? CSS3 是 CSS 一个新的标准,直接理解为是 CSS 的升级版,里面新增了
菜园前端
2023/04/11
3870
理解标准盒模型和怪异模式&box-sizing属性
盒子模型 主要有两种,w3c标准盒模型,IE下的怪异盒模型,其实还有就是弹性盒模型(上篇文章我们用他很好的解决了对齐问题) DTD规范 盒模型分为:标准w3c盒模型、IE盒模型、以及css中的伸缩盒模
okaychen
2018/01/05
1.8K0
理解标准盒模型和怪异模式&box-sizing属性
【Java 进阶篇】CSS盒子模型详解
CSS盒子模型是网页布局的基础之一,它定义了HTML元素在页面上的占用空间和相互关系。理解CSS盒子模型对于构建各种类型的网页布局至关重要。在本文中,我们将深入探讨CSS盒子模型的各个方面,包括盒子模型的概念、属性和如何使用它们来控制元素的大小和间距。
繁依Fanyi
2023/10/12
2910
【Java 进阶篇】CSS盒子模型详解
CSS魔法堂:盒子模型简介
本文讨论的是块级盒子(Block-level box)的盒子模型(Box Model) 一、W3C标准的盒子模型                              二、IE盒子模型      
^_^肥仔John
2018/01/18
5250
CSS魔法堂:盒子模型简介
全栈之前端 | 4.CSS3基础知识之盒子模型学习
描述:在 HTML 中首先会使用 CSS 来对元素进行定位,我们将学习如何使用 CSS 来控制和定位网页元素的位置、大小和布局。
全栈工程师修炼指南
2023/10/31
3310
全栈之前端 | 4.CSS3基础知识之盒子模型学习
CSS之box-sizing的应用
在我们说box-sizing之前,我们先了解下前端经典的“盒子模型”,聪明的程序猿们巧妙的用盒子模型这一形象将枯燥的css代码表示出来:想象一个盒子,它有:外边距(margin)、边框(border)、内边距(padding)、内容(content)四个属性;这些加起来就是一个完整的元素。
OECOM
2020/07/01
4080
CSS入门6-盒模型
(注1:如果有问题欢迎留言探讨,一起学习!转载请注明出处,喜欢可以点个赞哦!) (注2:更多内容请查看我的目录。)
love丁酥酥
2018/08/27
5930
CSS入门6-盒模型
相关推荐
CSS篇-面试题1-画一下盒子模型
更多 >
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文