【CSS3】一文搞懂盒子模型(知识点加案例)

盒子模型组成

=====================================================================

在这里插入图片描述

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

Margin(外边距) - 清除边框外的区域,外边距是透明的

Border(边框) - 围绕在内边距和内容外的边框。

Padding(内边距) - 清除内容周围的区域,内边距是透明的。

Content(内容) - 盒子的内容,显示文本和图像。

盒子边框

===================================================================

border: 1px solid pink;

这是边框的综合写法,表示要一个大小1像素的实线粉色边框

圆角边框

===================================================================

border-radius: 10px /一个数值表示四个角都是相同的10px的弧度/

像素值如果取宽度和高度的一半,则会变成一个圆形,可以用百分制表示

内边距(padding)

===========================================================================

什么是内边距?

内边距就是内容和边框之间的距离

padding-left: 10px; /左内边距/

padding: 20px; /padding如果只写一个值,表示上下左右都是20像素/

padding: 10px 30px; /上下10像素,左右30像素/

padding: 10px 30px 50px /上10,左右30,下50/

padding:10px 20px 30px 40px /顺时针表示,上右下左/

外边距(margin)

==========================================================================

我们可以通过margin相关操作来实现盒子在浏览器中的移动

比如我们想让盒子向下移动20像素:

margin-top: 20px;

更重要的是,我们可以通过margin实现盒子在浏览器中居中对齐

居中对齐需要满足以下两个条件:

**1.必须是块级元素

2.盒子必须指定了宽度**

例如:

居中对齐

在浏览器中实现效果为:

在这里插入图片描述

上下可以随意指定大小,但是左右一定要是auto

插入图片与背景图片在更改大小和位置时的区别

====================================================================================

这里先插播一条知识点:

文字水平居中:

text-align: center;

背景图片更改大小时只能用background-size

背景图片更改可以在background中简写表示:

插入图片更改大小及位置:

img {

width:200px; /插入图片更改大小用width和height/

height:220px;

margin-top:30px; /插入图片更改位置可以用margin和padding/

margin-left:50px;

行内元素上下内外边距问题


注意:行内元素是只有左右外边距的,是没有上下内边距的

我们尽量不要给行内元素指定上下内外边距

外边距合并


当上下相邻的两个块元素相遇时,如果上面的元素有下外边距margin-bottom,下面的元素有上外边距margin-top,则它们之间的垂直距离不是二者相加,而是两者之中的最大者。这种现象被称为相邻块元素垂直外边距的合并

上述问题影响不大,尽量避免就好。但是在开发过程中遇到最多问题的是嵌套块元素垂直边距的合并问题

对于两个嵌套关系的块元素,如果父元素没有上内边距及边框,则父元素的上外边距会与子元素的上外边距发生合并,合并后的外边距为两者中的较大者,即使父元素的上外边距为0,也会发生合并

下面我们着重讲嵌套块元素垂直边距合并的解决办法:

先给一个示例:

在子类中我们给子块一个 margin-top: 30px ,我们希望的是这样:

在这里插入图片描述

但发生了合并,实际上是这样:

在这里插入图片描述

小黑快并没有下来,那么我们如何解决呢?

解决方案:

**1.可以为父元素定义1像素的上边框或上内边框

2.可以为父元素添加 overflow:hidden**

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
朋友,同时减轻大家的负担。**

[外链图片转存中…(img-2819OjE0-1715744897244)]

[外链图片转存中…(img-CjZJhrz4-1715744897244)]

[外链图片转存中…(img-RSvm17sg-1715744897245)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值