前端开发:CSS盒模型

简介: 在前端开发中,CSS的使用是前端开发的“三驾马车”之一,剩余的其他两个是JS和HTML。有关CSS使用设置页面布局的时候,重中之重的就是关于盒模型的理解以及使用,而且CSS是比较抽象的,没有JS那样有很强的逻辑性,需要掌握的内容比较多、比较散,所以就算是入行开发多年的前端工程师也会觉得CSS不好驾驭。本篇博文就来分享一下关于CSS盒模型相关的知识点,方便查阅使用,如有不妥之处还请大家指正。

前言

在前端开发中,CSS的使用是前端开发的“三驾马车”之一,剩余的其他两个是JS和HTML。有关CSS使用设置页面布局的时候,重中之重的就是关于盒模型的理解以及使用,而且CSS是比较抽象的,没有JS那样有很强的逻辑性,需要掌握的内容比较多、比较散,所以就算是入行开发多年的前端工程师也会觉得CSS不好驾驭。本篇博文就来分享一下关于CSS盒模型相关的知识点,方便查阅使用,如有不妥之处还请大家指正。

盒模型概念

关于盒模型的概念,比较专业的官方解释是这样说的:所有HTML元素都可看作盒子,在CSS中,"box model"这一术语是用来设计和布局时使用。CSS盒模型实质上是一个盒子,封装周围的HTML元素,其中包括:margin(外边距)、border(边框)、padding(内边距/填充)和content(实际内容)等四要素。

* margin(外边距) —— 清除边框区域。Margin没有背景颜色,是完全透明的。
* border(边框) —— 边框周围的填充和内容。边框会受到盒子的背景颜色影响的。
* padding(内边距/填充) —— 清除内容周围的区域。同样会受到框中填充的背景颜色影响。
* content(实际内容) —— 盒子的实际内容,用来显示文本和图像等内容。

注意:在盒模型中,外边距可以设置为负值,而且在很多情况下都会使用负值的外边距操作。

具体的盒模型如下所示:
根据上图可以看到,margin、border、padding是CSS属性,因此可以通过这三个属性来控制盒子对应的这三个模块,而content则是HTML元素的内容模块。

盒模型成分组成(常用的)

1、margin

margin-top:上边距  
margin-buttom:下边距  
margin-left:左边距  
margin-right:右边距  
也可以直接使用简写属性margin同时设置四条边距的宽度。  

2、padding

padding-top:上填充  
padding-bottom:下填充  
padding-left:左填充  
padding-right:右填充  
也可以直接使用简写属性padding同时设置四条边距的宽度,与margin的类似。  

3、border

border-top:上边界  
border-bottom:下边界  
border-left:左边界  
border-right:右边界  

如果border属性的色值不明确指定时,如border: 1px solid,这时边框的颜色和当前元素的字体颜色color一致。

 border-width:边界宽度  
border-style:边界样式  
border-color:边界颜色  

盒模型种类

盒模型分为:标准的W3C盒模型 、怪异的IE盒模型。二者的区别:标准的W3C盒模型总宽度= content,怪异的IE盒模型总宽度=content+padding。

当box-sizing:content-box时,这种盒模型为标准的W3C盒模型,当box-sizing: border-box时,这种盒子模型为怪异的IE盒模型。

盒模型使用

盒模型使用的时候,当指定一个CSS元素的宽度和高度属性时,只是设置了内容区域的宽度和高度。但是,完整大小的元素,还必须要添加内边距、边框和外边距。

示例

1、设置一个div的总宽度为250px:

div {
    background-color: light;
    width: 250px;
    border: 50px solid red;
    padding: 20px;
    margin: 20px;
}

2、在一个只有200px的空间里面,设置总宽度为200px的div:

div{
width:170px;
padding:10px;
border:5px solid yellow;
margin:0px;
}

·最终元素的总宽度计算公式如下所示:

总元素的宽度=宽度+左填充+右填充+左边框+右边框+左边距+右边距

·元素的总高度最终计算公式如下所示:

总元素的高度=高度+顶部填充+底部填充+上边框+下边框+上边距+下边距

盒模型兼容性

IE8及以上版本支持该属性,Firefox火狐浏览器需要加上浏览器厂商前缀-moz-,对于低版本的IOS和Android浏览器也需要加上-webkit-。

最后

通过上面介绍的关于CSS盒模型的相关知识点,盒模型原理以及使用通过本文内容就可涵盖,在Vue.js开发中的使用就游刃有余了,这也是在开发过程中必用的功能,尤其是对于初中级开发者来说,更应该掌握这些情况的使用,这里不再赘述。以上就是本章的全部内容,欢迎关注三掌柜的微信公众号“程序猿by三掌柜”,三掌柜的新浪微博“三掌柜666”,欢迎关注!

相关文章
|
4月前
|
前端开发
【前端web入门第四天】02 CSS三大特性+背景图
本文详细介绍了CSS的三大特性:继承性、层叠性和优先级,并深入讲解了背景图的相关属性,包括背景属性、背景图的平铺方式、位置设定、缩放、固定以及复合属性。其中,继承性指子元素自动继承父元素的文字控制属性;层叠性指相同属性后定义覆盖前定义,不同属性可叠加;优先级涉及选择器权重,包括行内样式、ID选择器等。背景图部分则通过具体示例展示了如何设置背景图像的位置、大小及固定方式等。
270 91
|
2月前
|
Web App开发 前端开发 JavaScript
揭秘!前端大牛们如何巧妙利用CSS3,打造炫酷视觉效果!
【10月更文挑战第31天】前端开发面临复杂布局的挑战,本文介绍了几种提升开发效率和代码质量的工具和技术。基础的HTML和CSS可以应对大部分布局需求,而Firefox开发者工具、VS Code、Vue、React等则能应对更复杂的布局,帮助开发者构建高性能、用户友好的网页应用。
38 4
|
3月前
|
前端开发 JavaScript
CSS样式穿透技巧:利用scoped与deep实现前端组件样式隔离与穿透
CSS样式穿透技巧:利用scoped与deep实现前端组件样式隔离与穿透
317 1
|
4月前
|
前端开发
前端基础(五)_CSS文本文字属性、背景颜色属性
本文详细介绍了CSS中关于文本和背景颜色的样式属性。包括字体大小、字体族、字体加粗、字体样式、文本行高、`font`属性、文本颜色、文本对齐方式、文本装饰线、首行缩进等文本属性,以及背景颜色、背景图片、背景重复、背景位置等背景属性。文章通过示例代码展示了这些属性的具体应用和效果。
79 3
前端基础(五)_CSS文本文字属性、背景颜色属性
|
4月前
|
前端开发
前端基础(九)_CSS的三大特征
本文详细解释了CSS的三大特性:层叠性、继承性和优先级,并通过实例演示了样式冲突、叠加和选择器优先级的应用。
43 2
前端基础(九)_CSS的三大特征
|
3月前
|
前端开发 UED
CSS 盒模型
CSS盒模型是网页设计中一个重要的概念,它定义了HTML元素如何在页面上呈现及其相互关系。每个HTML元素都被视为一个矩形框,此模型涉及内容区、内边距、边框和外边距四个部分,通过控制这些部分的样式和布局,设计师可以实现多样化的页面效果。
|
3月前
|
前端开发 容器
前端技术分享:利用CSS Grid布局实现响应式设计
【10月更文挑战第1天】前端技术分享:利用CSS Grid布局实现响应式设计
|
3月前
|
前端开发 UED 容器
前端技术分享:利用 CSS Grid 实现响应式布局
【10月更文挑战第1天】前端技术分享:利用 CSS Grid 实现响应式布局
82 2
|
3月前
|
Web App开发 前端开发
【前端基础篇】CSS基础速通万字介绍(上篇)2
【前端基础篇】CSS基础速通万字介绍(上篇)
30 2
|
3月前
|
Web App开发 前端开发
【前端基础篇】CSS基础速通万字介绍(上篇)3
【前端基础篇】CSS基础速通万字介绍(上篇)
27 1

热门文章

最新文章