如何调css才可以适用不同的浏览器

方案一:

写三句代码来控制一个属性,区别Firefox,IE7,IE6:

background:orange;*background:green !important;*background:blue;

方案二:

#sample {background:red;}

* html #sample {backgroud:green;}

* +html #sample{backgroud:blue}

第一个是标准写法,针对所有浏览器都有效,但是一样的CSS在不同的浏览器中会变形,这个道理你明白吧,要不然你也不会来看我这篇文章了。Firefox,Oprea等非IE浏览器,不识别下面两种写法,所以理所当然的执行了第一种CSS代码,为红色背景。

第二个是只针对IE6,只有IE6会执行,其它浏览器都不执行。那么Firefox,IE7都不会读到这里的代码,IE6本来第一种是能执行的,可是因为第二种能识别,所以过滤了第一种的红色效果,变成了绿色背景。

第三个只针对IE7,只有IE7才能执行。IE6,firefox都不识别,当然只有IE7自己执行啦,同样的道理,能执行第一种,变成红色,可又被第三种过滤成蓝色背景。


写三句代码来控制一个属性,区别Firefox,IE7,IE6:
background:orange;
*background:green !important;
*background:blue;

说明:这段代码会使在Firefox中,背景呈橙色;IE7中为绿色;IE6中为蓝色。

道理如下,Firefox不能识别*,所以后面两句都不执行,直接执行第一句;IE7三个都能识别,但是由于有第二句important的作用,所以就执行了第二句代码;IE6不能识别!imprtant,按照最新原则,那就理所当然的执行了最后一句。

注:另外一种方式:

background:orange;
*background:green;
_background:blue;

Firefox不支持*和_,所以只实现第一句;IE7不支持_,所以实现第二句;IE6实现第三句。

网站建设咨询