基本兼容方法
Hack表示补丁的意思,就是利用各种技巧,专门为特定浏览器增补样式,以实现在不同浏览器中具有相同的显示效果。这些方法也被称为过滤器(Filter),就是在所有浏览器中过滤出特定类型浏览器并为其单独定义样式。
常用CSS Hack包括3种形式:条件过滤器、属性过滤器和选择符级过滤器。
1、IE条件语句
基本用法:
<!--[if<keywords>?IE<version>?]>
HTML代码块
<![endif]-->
示例:
<!--[if IE 6]>
<style type="text/css">
body { background:red;} /*IE6版本浏览器中有效*/
</style>
<![endif]-->
2、属性过滤器
基本用法:
selector{?property:value?;}
<hack>取值说明如下:
_:选择IE 6及以下版本。
*:选择IE 7及以下版本。
\9:选择IE 6+。
\0:选择IE 8+和Opera。
[;property:value;];:选择Webkit核心浏览器(Chrome、Safari)。IE 7及以下版本也能识别。
示例:
p {
color:#c30;/*For Firefox*/
[;color:#ddd;];/*For webkit(Chrome and Safari)*/
color:#090\0;/*For Opera*/
color:#00f\9;/*For IE 8+*/
*color:#f00;/*For IE 7*/
_color:#ff0;/*For IE 6*/
}
3、选择器过滤器
基本语法:
selector{ sRules }
1)IE 7版本浏览器专用过滤器
*+html body {
background:blue;
}
2)IE 6及以下版本浏览器专用
* html body {
background:red;
}
3)非IE 6及以下版本浏览器专用
html>body {
background:green;
}
4)非IE浏览器专用
html>/**/body {
background:yellow;
}