一、内边距
内边距(padding),指的是盒子的内容区与盒子边框之间的距离,一共有四个方向:
padding-top ---- 上内边距
padding-right----- 右内边距
padding-bottom----下内边距
padding-left ------左内边距
内边距会影响盒子的可见框的大小,元素的背景会延伸到内边距
盒子的大小由内容区、内边距和边框共同决定
盒子可见框的宽度 = border-left-width + padding-left + width + padding-right + border-right-width
盒子可见框的高度 = border-top-width + padding-top + height + padding-bottom + border-bottom-width
也可以一起写
二、外边距
外边距指的是当前盒子与其他盒子之间的距离,他不会影响可见框的大小,而是会影响到盒子的位置
盒子有四个方向的外边距:
margin-top-------上外边距
margin-right-------右外边距
margin-bottom--------下外边距
margin-left--------左外边距
由于页面中的元素都是靠左靠上摆放的,所以注意当我们设置上和左外边距时,会导致盒子自身的位置发生改变,而如果是设置右和下外边距会改变其他盒子的位置
/*
外边距也可以指定为一个负值,如果外边距设置的是负值,则元素会向反方向移动
*/
/*margin-left: -100px;
margin-top: -100px;
margin-bottom: -100px;*/
/*margin-bottom: -100px;*/
margin还可以设置为auto,auto一般只设置给水平方向的margin
如果只指定,左外边距或右外边距的margin为auto则会将外边距设置为最大值
垂直方向外边距如果设置为auto,则外边距默认就是0
如果将left和right同时设置为auto,则会将两侧的外边距设置为相同的值,就可以使元素自动在父元素中居中
所以我们经常将左右外边距设置为auto,以使子元素在父元素中水平居中