css padding属性兼容ie6,ie8,firefox实例详解

css padding属性兼容ie6,ie8,firefox实例详解
本文章简单的介绍一下关于padding兼容ie6,ie8,firefox的做法,因为不同浏览器对padding理解不一样,所以在浏览时会有点差别。

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

例子 1
padding:10px 5px 15px 20px;上内边距是 10px
右内边距是 5px
下内边距是 15px
左内边距是 20px

例子 2
padding:10px 5px 15px;上内边距是 10px
右内边距和左内边距是 5px
下内边距是 15px

例子 3
padding:10px 5px;上内边距和下内边距是 10px
右内边距和左内边距是 5px

例子 4
padding:10px;所有 4 个内边距都是 10px
设现在设置一个padding值,这个值在FF、IE8、IE6中都不一样
首先考虑的是FF下的值
.test{padding:10px}
接着考虑IE8下的值
.test{padding:10px;*padding:9px}
最后考虑IE6下的值
.test{padding:10px;*padding:9px;_padding:8px}
这样就可以了。

做兼容性时,最先考虑FF、opera这些浏览器,最后考虑IE6。
拿上例来说,IE8、IE6都可识别*,但FF不能识别。
所以拿*来做IE8的Hack,而_在FF和IE8中都不识别,只有IE6能识别,所以用_做IE6的Hack

推荐阅读