HTML5+CSS——11盒子模型-边框、内边距、外边距

HTML5+CSS——11盒子模型-边框、内边距、外边距,第1张

1.盒子简介:在CSS处理网页时,它认为每个元素都包含在一个不可见的盒子里,那么网页布局就相当于摆放盒子

2.盒子模型组成部分:

内容区(content)

内边距(padding)

外框(border)

外边距(margin)

1.box的宽高可以用 width和heigh t来设置

注意,width和height只是设置盒子内容区大小,而不是盒子的整个大小,盒子可见框的大小由内容区,内边距和边框共同决定。因此计算 盒子大小=内容区+边框+内边距

2.为元素设置边框

要为一个元素设置红边框 必须指定三个样式(缺一不可)

border-width:边框的宽度

border-color:边框的颜色

border-style:边框的样式

使用border-width可以分别指定四个边框的宽度。

如果在border-width制定了四个值,则四个值会分别设置给 上右下左 ,按照顺时针的方向设置的。

如果指定三个值,则三个值会分别设置给 上 左右 下

如果当指定两个值,则两个值会分别设置给 上下 左右

如果当指定一个值,则四边 全都是该值

这个规律同时适用于border-color / style

除了border-width,CSS中还提供了四个 border-xxx-width

xxx的值可能是top right bottom left , 专门用来设置指定边的宽度 。

和宽度一样,color也提供四个方向的样式,可以分别指定颜色。例如,border-xxx-color

style也可以分别指定4个边的边框样式,规则和width一样,同时它也提供border-xxx-style四个样式,来分别设置四个边。

border  的边框样式简写方式,通过它可以同时设置四个边框的样式,宽度,颜色, 而且没有任何的顺序要求。但是!border一指定就是同时指定四个边不能分别指定。

border-xxx ,例如border-top   border-right   border-bottom  border-left

可以单独设置四个边的样式,规则和border一样,只不过他只对一个边生效。

内边距(padding),指的是盒子的内容区域盒子边框之间的距离。

一共有四个方向的内边距,可以通过:

padding-top

padding-right

padding-left

padding-bottom

来设置四个方向的内边距

内边距会影响盒子的可见框的大小,元素的背景会延伸到内边距。

盒子的大小由内容区、内边距和边框共同决定。

盒子可见框的宽度=border-left-width + padding-left + width + padding-right + border-right-width

可见框的高度=border-top-width + padding-top + height + padding-bottom + border-bottom-width

使用padding可以同时设置四个边框的样式,规则和border-width一致

外边距指的是当前盒子与其他盒子之间的距离,他不会影响可见框的大小,而是会影响到盒子的位置。

盒子有四个方向的外边距:

margin-top

margin-rigtht

margin-bottom

margin-left

由于页面中的元素都是靠左上摆放的,所以注意当我们设置上和左外边距时,会导致盒子自身的位置发生改变。

而如果是设置右和下外边距会改变其他盒子的位置

外边距也可以指定一个负值,如果外边距设置的是负值,则元素会向反方向移动

margin还可以设置为auto,auto一般只设置给水平方向的margin

如果只指定,左外边距或者右外边距的margin为auto则会将外边距设置为最大值

垂直方向外边距如果设置为auto,则外边距默认就是0

如果将left和right同时设置为auto,则会将两侧的外边距设置为相同的值,就可以使元素自动在父元素中居中,所以我们经常将左右外边距设置为auto,以使元素在父元素中水平居中。

同时,外边距同样可以使用简写属性margin,可以同时设置四个方向的外边距,规则和padding一样。

1)像<span>这样的行内标记,定义它的margin-top和margin-bottom是无效的,除非你把它设置为块状元素才可以。Display:block

2)对于块状元素,你可以自由的使用外边距来定义版式和元素之间的距离。类似 DIV 等等,

3)无论什么元素,一旦设置为是浮动显示,就拥有了完整的盒模型结构,我们就可以使用外边距,内边距,边框,高和宽来控制的大小以及与其他对象之间的位置关系。

4)浮动是从网页布局的角度来定义元素的显示,而行内和块状属性主要是从元素自身的性质来定其显示的。

5)当元素没有定义边框时,可以把内边距作为外边距使用。有时候外边距会有重叠现象的。

6)当为元素定义背景图像时,内边距区域内可以显示背景图像,而对外边距区域来说,背景图像是达不到的,他永远都是透明状态

7)用div+css设计网页结构时,设计师满脑子都是网页内容,而非内容所呈现的效果。

8)块状元素:不管块状元素宽度是多少,他总会自动占据一行,因为在他末尾附加了一个换行符,而行内元素没有这个特点。块状元素有完整的盒模型结构,可以定义宽度和高度,而行内元素没有这个特性,无法通过高度来改变文本行的行高。

块元素的代表标记 div

行内元素的代表标记 span ,行内标记不具备组织结构框架

9)网页布局分为:自然布局,浮动布局, 定位布局

10)当一个元素被定义为浮动显示时,即定义为块状元素。并且该元素就会收缩自身体积为最小状态。所以,应该有个好的习惯即把浮动元素设置高和宽。如果没有设置,则元素会按照它所包含的内容大小来确定它的大小。

11)当元素浮动后,周边的对象会自动环绕浮动元素周围,形成一种环绕关系。

12)块状元素之间的外边距会有重叠现象,但是浮动元素之间的外边距不会发声重叠现象。

13)浮动元素移动,上移:margin-top:-**下移:margin-botom:-*px,其他以此类推。

14)一般定位元素(绝对或是相对元素)都会覆盖在文档流对象之上。但是,select元素的窗口控件还不完全支持z-index

15)在css定位布局中,一般遵循“外部相对定位,内部绝对定位”

16)在body中设置min-width:760px,可以避免布局重叠现象。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7024100.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-31
下一篇 2023-03-31

发表评论

登录后才能评论

评论列表(0条)

保存