CSS 外边距

CSS 外边距 (margin) 属性定义元素周围的空间。

CSS 边距属性定义元素周围的空间。可以用用负值对内容进行叠加。通过使用单独的属性,可以对上、右、下、左的外边距进行设置。也可以使用简写的外边距属性同时改变所有的外边距。

CSS 外边距

大多数正常流元素间出现的间隔都是因为存在元素的外边距。设置外边距会在元素外创建额外的“空白”。“空白”通常指不能放其它元素的区域,而且在这个区域中可以看到父元素的背景。

设置外边距的最简单的方法就是使用属性 margin

外边距属性的值

margin 可以设置为 auto。更常见的做法是为外边距设置长度值。下面的声明在 h1 元素的各个边上设置了 1/4 英寸宽的空白:

h1 {margin : 0.25in;}

margin 接受很多长度单位,比如像素、英寸、毫米或 em 等。不过 margin 的默认值是 0,所有如果没有为 margin 声明一个值,就不会出现外边距。

下面的例子为 h1 元素的四个边分别定义了不同的外边距,所使用的长度单位是像素 (px):

h1 {margin : 10px 0px 15px 5px;}

这些值的顺序是从上外边距 (top) 开始围着元素顺时针旋转的:

margin: top right bottom left

不过,在实际中,浏览器对许多元素提供了预定的样式,外边距也不例外。例如,在支持 CSS 的浏览器中,外边距会在每个段落元素的上面和下面生成“空行”。因此,如果没有为 p 元素声明外边距,浏览器可能会自己应用一个外边距。当然,只要你特别作了声明,就会覆盖默认样式。

另外,还可以为 margin 设置一个百分比数值:

p {margin : 10%;}

百分数是相对于父元素的 width 计算的。上面这个例子为 p 元素设置的外边距是其父元素的 width 的 10%。

提示和注释

提示:Netscape 和 IE 对 body 标签定义的默认边距(margin)值是 8px。而 Opera 不是这样。相反地,Opera 将内部填充(padding)的默认值定义为 8px,因此如果希望对整个网站的边缘部分进行调整,并将之正确显示于 Opera 中,那么必须对 body 的 padding 进行自定义。

CSS 外边距实例:

设置文本的左外边距
本例演示如何设置文本的左外边距。
设置文本的右外边距
本例演示如何设置文本的右外边距。
设置文本的上外边距
本例演示如何设置文本的上外边距。
设置文本的下外边距
本例演示如何设置文本的下外边距。
所有的外边距属性在一个声明中。
本例演示如何将所有的外边距属性设置于一个声明中。

CSS 外边距属性

属性 描述
margin 简写属性。在一个声明中设置所有外边距属性。
margin-bottom 设置元素的下外边距。
margin-left 设置元素的左外边距。
margin-right 设置元素的右外边距。
margin-top 设置元素的上外边距。