Browser | @import url("...") | @import url(...) | @import "..." | media="" | @media | comment | attribute | child | Tantek |
---|---|---|---|---|---|---|---|---|---|
Amaya 5.1 Win | x | x | x | x | |||||
IE 3 Win | x | x | x | x | x | x | x | ||
IE 4 Win | x | x | x | x | x | x | x | x | |
IE 5 Win | x | x | x | x | |||||
IE 5.5 Win | x | x | x | ||||||
IE 6 Win | x | x | |||||||
IE 4.01 Mac | x | x | x | x | x | x | |||
IE 4.5 Mac | x | x | x | x | |||||
IE 5 Mac | x | x | x | ||||||
Konqueror 2.1.1 | x | ||||||||
Mozilla 1.0 | |||||||||
Netscape 4.x | x | x | x | x | x | x | x | x | |
Netscape 6.01 | |||||||||
Netscape 6.1 | |||||||||
Netscape 6.2 | |||||||||
Opera 3.60 Win | x | ||||||||
Opera 4.02 Win | |||||||||
Opera 5.02 Win | |||||||||
Opera 5.12 Win | |||||||||
Opera Tech Preview 3 Mac |
看完这张表之后我的第一反应是:Mozilla和Opera真乃神人也。只有一条规则会对Opera最老的一个版本起作用,所以后面我们在讲到隐藏规则的时候基本上就不考虑Mozilla和Opera了。下面列出这九种“剑法”的招数,同时在旁边也注上了我个人推荐的使用场合。注意,我推荐的不一定与你的需求相符,使用前请对照上面的表格。
@import url("global.css")
对老版本(版号小于5)的浏览器隐藏规则。
@import url(global.css)
对Windows平台的老版本(版号小于5)浏览器隐藏规则。
@import "global.css"
对Windows平台的老版本(版号小于5)浏览器隐藏规则。
link href="global.css" type="text/css" rel="stylesheet" media="all"/>
对Netscape 4.x隐藏规则。
@media all { ... /* 需要隐藏的规则 */ }
如果只考虑NN和IE的话就是只对4.x版本隐藏规则。
#anySelector/* */ { color:#f00; }
这可是精确制导导弹。只对IE5及以下版本隐藏规则。所以如果要把IE5和IE5.5分开定义规则,那就靠它了。
p[id] { color: #0f0; }
又一个精确制导导弹。如果不关心老版本浏览器,那就是只对IE隐藏规则。关于属性选择器的更多信息请看W3C的文档。
p>span { color: #00f; }
基本同上,只是Mac平台部分版本的IE支持这个规则。
p#tantek { voice-family: "\"}\""; /* 某些浏览器有解析bug */ voice-family: inherit; /* 在这以下的规则都会被忽略 */ color: #f00; }
著名的隐藏CSS技巧,对所有“非现代”浏览器隐藏规则。