做web开发,对css样式都有所了解,让各浏览器都正确解析网页,还真得费一凡功夫,今天,先说说padding吧
制作网页时在IE7下显示正常了,IE6下用些hack方法基本也解决了,就是IE8和firefox下还是有问题啊,兼容性问题真让人崩溃。
假设现在设置一个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
在另外两个页面中加了<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />后ie8下也显示正常了,可到了三级页面加上这句还是老问题,莫名其妙层与层之间有好多间隙出来
这个就要具体看你的CSS和HTML代码了。
页头加<meta http-equiv="X-UA-Compatible" content="IE=7" />或<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />是告诉IE8浏览使用IE7兼容模式进行页面解析。如果你的CSS定义原本就有问题,光是加这个是解决不了问题的。