CSS样式里的padding和margin是什么意思,有何作用

html-css017

CSS样式里的padding和margin是什么意思,有何作用,第1张

Padding:这个简写属性设置元素所有内边距的宽度,或者设置各边上内边距的宽度。行内非替换元素上设置的内边距不会影响行高计算;因此,如果一个元素既有内边距又有背景,从视觉上看可能会延伸到其他行,有可能还会与其他内容重叠。元素的背景会延伸穿过内边距。不允许指定负边距值。值 描述

* padding-top

* padding-right

* padding-bottom

* padding-left

设置内边距。

值可以是:

* 百分比(基于父元素宽度的百分比)

* 长度值(固定的padding值)

Margin:这个简写属性设置一个元素所有外边距的宽度,或者设置各边上外边距的宽度。

块级元素的垂直相邻外边距会合并,而行内元素实际上不占上下外边距。行内元素的的左右外边距不会合并。同样地,浮动元素的外边距也不会合并。允许指定负的外边距值,不过使用时要小心。

值 描述

* margin-top

* margin-right

* margin-bottom

* margin-left

设置针对边距的属性。

值可以是:

* 百分比(基于父对象总高度或宽度的百分比)

* 长度值(定义一个固定的边距)

* auto(浏览器设定的值)。

默认值:未定义。

CSS中margin和padding有以下三方面区别。

在CSS中margin是指从自身边框到另一个容器边框之间的距离,就是容器外距离。在CSS中padding是指自身边框到自身内部另一个容器边框之间的距离,就是容器内距离。

1、语法结构。

padding:

padding-left:10px左内边距、padding-right:10px右内边距、padding-top:10px上内边距、padding-bottom:10px下内边距。

margin:margin-left:10px左外边距、margin-right:10px右外边距、margin-top:10px上外边距、margin-bottom:10px下外边距。

2、可能取的值。

padding:length规定具体单位记的内边距长度、%基于父元素的宽度的内边距的长度、auto浏览器计算内边距、inherit 规定应该从父元素继承内边距。

margin:length  规定具体单位记的外边距长度、%基于父元素的宽度的外边距的长度、auto浏览器计算外边距、inherit 规定应该从父元素继承外边距。

3、浏览器兼容问题。

padding:所有浏览器都支持padding属性、任何版本IE都不支持属性值“inherit”。

margin:所有浏览器都支持margin属性、任何版本IE都不支持属性值“inherit”。

这是内核浏览器的bug,很普遍的问题。解决的方法有几种:

1.margin换成padding(最快捷的方法)

2.使用浮动

3.给父级div加点内容,比较边框之类。或者在id=lianjie_t的div之前加点内容

具体不懂的话可以M我,互相帮助,望采纳。。。

补充下,这个问题在IE6是可以的,是浏览器的BUG问题,只要是父级div没有内容(也就是id=lianjie_t之前没内容),而且使用margin就会出现这个问题。别和自己较劲。。。