一下是我自己的经验:
一般来说 css文件中,如果用“_” 、“*” 或者!important等前缀或者后缀,单独针对某一版本的浏览器来设置css的话,可以宣布你做的css是很失败的,可以把它删除,重做了。
一般来说浏览器兼容性主要表现:
(1)在IE6跟其他浏览器之间:IE6下出现的双边距问题,一般发生在浮动的块标签,所幸这种双边距只是发生在水平方向上的。css文件中 只需要对设置浮动的标签后边加上display:inline即可。
(2)同时 overflow:hidden 也是解决兼容性问题的不错标签 ,它主要是针对盒子模型来的,在网页制作时,虽然对盒子设置了长和高, 但是如果内容过多的话,盒子会被内容撑大,个别浏览器会主动将超出的部分隐藏。而有的则不会,所以会出现同一个网页在不同浏览器下会有不同的显示结果,因此适当的加入overflow:hidden会减少兼容性问题的出现。
(3)在写css文件时最好要写入一个样式:* { margin:0; padding:0; border:0;}
其作用就相当于程序的初始化。由于不同浏览器之间初始值不同(如,有的浏览器会默认对盒子有个margin值,有的则没有),所以在不同浏览器下,会看到网页的不同。而这个样式会使所有标签的margin、padding、border值从0开始,下面无论对盒子做什么,在所有浏览器下都是移动相同像素。
(4)对盒子模型的掌握能力。如果对盒子的padding、margin、border所动的像素不准确,很容易导致网页变样。这就需要你对盒子模型下功夫了
DIV+CSS中各个浏览器的问题很多很多,要全部列出来,真的不是一个容易的事情,有:外间距、内间距、绝对定位、浮动,等等问题,可以说每次都会有不同的情况,据我的情况来说,只有经验才可以解决。但是我给你一个建议,就是写div+CSS的时候,要往充实,繁多来写,不要偷懒,写简单。对,简单写出来火狐是可以兼容的,但IE6就肯定不会兼容,这是我的经验,我做了2年多了,现在写DIV+CSS,做完一个html,IE6的兼容达95%以上,只是内外间距会有点小问题外,其余的都兼容正常。多做吧,多做会有经验的
1, !important
随着IE7对!important的支持, !important 方法现在只针对IE6的兼容.(注意写法.记得该声明位置需要提前.)
代码:
2, IE6/IE77对FireFox
*+html 与 *html 是IE特有的标签, firefox 暂不支持.而*+html 又为 IE7特有标签.
代码:
注意:
*+html 对IE7的兼容 必须保证HTML顶部有如下声明:
代码:
最近我也在找,给你个参考的网站。
http://www.xue5.com/itedu/200904/296808.html