当前位置: 首页 > 图文教程 > 网页制作 > HTML/XHTML教程 > 针对各种版本的浏览器隐藏CSS的九大技巧

HTML/XHTML教程
CSS基础:设计网页常用规范详解
CSS教程:十步学会用css建站
CSS基础:24条网页布局开发小技巧
CSS教程:在网页布局中简单实现垂直居中的办法
css基础教程:颜色和文本属性的控制
专家总结:网页设计师必须遵守的十条守则
html技巧:超级链接a的提示和打开方式
css教程:学习背景图像属性background
例说网页Semantics:Html/Xhtml是否真正符合标准
IE7与web标准设计系列教程:前言
IE7与web标准设计系列教程:更丰富的CSS选择符
IE7与web标准设计系列教程:修正引起页面布局混乱的祸首
web标准教程:IE6和IE7的共存
web标准:IE多版本共存的解决方案:IETester
CSS基础教程:认识CSS选择符
web标准:比较IE6与IE7,放纵的孩子与严厉的父亲
学好标准CSS的模型是否必须放弃IE?
CSS教程:如何处理有冲突的CSS规则
教你用html和css写出漂亮正规的Blog
CSS基础:如何避免table强迫症

HTML/XHTML教程 中的 针对各种版本的浏览器隐藏CSS的九大技巧


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-04   浏览: 84 ::
收藏到网摘: n/a

我们都知道浏览器之间是有差异的,很多人在使用XHTML+CSS方式制作网页的时候都曾为此无比头痛。要在这些差异的影响下工作需要很多的技巧,“隐藏CSS”就是其中很重要的一种技巧(甚至是最重要的)。这种技巧的主要思想是,用某些方式对某些浏览器隐藏某些重载的CSS规则。

这篇文章并不是想教你如何使用这种技巧,它面向的是有一定CSS基础的设计开发者,我假定你曾经使用过某种隐藏CSS规则的方法。这里是想把可用的方法与被隐藏规则的浏览器都列出来,方便大家在平时工作时随时查阅。

在这张大表里列出了九种方法,我就称其为“独孤九剑”,希望能帮上你的忙:-D

注:此表格原载 w3development.de。

Browser@import url("...")@import url(...)@import "..."media=""@mediacommentattributechildTantek

Amaya 5.1 Winx xxx

IE 3 Winxxx xxxx

IE 4 Winxxx xxxxx

IE 5 Win xxxx

IE 5.5 Win xxx

IE 6 Win xx

IE 4.01 Macx xxxxx

IE 4.5 Macx xx x

IE 5 Mac xxx

Konqueror 2.1.1 x

Mozilla 1.0

Netscape 4.xxxxxx xxx

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("")

@import url("global.css")

对老版本(版号小于5)的浏览器隐藏规则。

@import url()

@import url(global.css)

对Windows平台的老版本(版号小于5)浏览器隐藏规则。

@import ""

@import "global.css"

对Windows平台的老版本(版号小于5)浏览器隐藏规则。

media=""

<link href="global.css" type="text/css" rel="stylesheet" media="all"/>

对Netscape 4.x隐藏规则。

@media

@media all {

... /* 需要隐藏的规则 */

}

如果只考虑NN和IE的话就是只对4.x版本隐藏规则。

comment

#anySelector/* */ { color:#f00; }

这可是精确制导导弹。只对IE5及以下版本隐藏规则。所以如果要把IE5和IE5.5分开定义规则,那就靠它了。

attribute

p[id] { color: #0f0; }

又一个精确制导导弹。如果不关心老版本浏览器,那就是只对IE隐藏规则。关于属性选择器的更多信息请看W3C的文档。

child

p>span { color: #00f; }

基本同上,只是Mac平台部分版本的IE支持这个规则。

Tantek

p#tantek {

voice-family: "\"}\""; /* 某些浏览器有解析bug */

voice-family: inherit; /* 在这以下的规则都会被忽略 */

color: #f00;

}

著名的隐藏CSS技巧,对所有“非现代”浏览器隐藏规则。