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

html-css015

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一样。

盒子模型分为哪几部分?

一个盒子模型分成几部分:

- 内容区(content)

- 内边距(padding)

- 边框(border)

- 外边距(margin)12345

内容区

内容区:盒子中放置内容的区域,也就是元素中的文本内容,子元素都是存在于内容区中的。

如果没有元素设置内边距和边框,则设置内容大小偶人和盒子大小一致123

通过width 和height 两个属性可以设置内容的大小1

width 和height属性值适合用于块元素1

内边距

内边距:元素内容区与边框以内的空间1

默认情况下width和height不包含padding的大小

12

使用padding属性来设置元素的内边距

举例:

-padding:10px 20px 30px 40px

这样会设置元素的 上,右,下,上 四个方向的内边距。(按照顺时针方向)

padding:10px 20px 30px

分别指定 上,左右,下 四个方向的内边距

padding:10px 20px

分别指定上下,左右四个方向的内边距

padding:10px

分别指定 上左下右 四个方向的内边距

同时在CSS中还提供padding-top padding-right padding-left padding-bottom1234567891011121314

边框

可以在元素周围创建边框,边框是元素可见的最外部1

可以使用border属性来设置盒子的边框:

-border:1px red solid

上边的样式分别指定了边框的 宽度 ,颜色,样式123

也可以使用border-top/left/right/bottom分别指定 上右下左 四个方向的边框

和padding一样,默认width 和height 并包括边框的宽度123

边框样式

边框样式可以设置多种样式:

-none(没有边框)

-dotted(点线)

-dashed(虚线)

-solid(实线)

-double(双线)

-groove(槽线)

-ridge(脊线)

-inset(凹线)

-outset(凸线)1234567891011

外边距

外边距是原素边框与周围元素相距的空间1

使用margin属性可以设置外边距1

用法和padding 类似,同样也提供了四个方向的

margin-top/right/bottom/left12

当将左右外边距设置为auto时,浏览器会将左右外边距设置为相等,所以这行代码 margin:0 auto 可以使元素居中

1

margin 在一个声明中设置所有外边距属性。

margin-top设置元素的上外边距。

margin-bottom 设置元素的下外边距。

margin-left设置元素的左外边距。

margin-right 设置元素的右外边距。