外边距margin可以让块级盒子水平居中,必须满足两个条件:
1.盒子必须指定了宽度
;
2.盒子的左右外边距都设置为auto
。
常见写法:margin-left:auto;margin-right:auto;
margin:auto;
margin:0 auto;
注意:行内元素或者行内块级水平居中给其父元素添加text-align:center;
外边距合并
**1.相邻块级元素垂直外边距的合并**:
当上下相邻的两个块级元素相遇时,如果上面的元素有下外边距margin-bottom,下面的元素有上外边距margin-top,则他们之间的垂直间距不是margin-bottom与margin-top之和,而是取两个值中较大者。(解决方案:尽量只给一个盒子加外边距)
**2.嵌套块元素垂直外边距的塌陷:**
对于两个嵌套关系的块元素,父元素有上外边距的同时子元素也有上外边距,此时父元素会塌陷较大的外边距值(解决方案:1)可以为父元素定义上边框;2)可以为父元素定义上内边距;3)可以为父元素添加overflow:hidden
)
清除内外边距
:
网页元素很多带有默认的内外边距,而且不同浏览器默认的也不一致,因此我们在布局前,首先要清除下网页元素的内外边距。
*{
padding:0;
margin:0;
}
注意:行内元素为了照顾兼容性,尽量只设置左右内外边距,不要设置上下内外边距,但是转换为块级和行内块元素就可以了。