针对不同的浏览器写不同的CSS code的过程,就叫CSS hack。
条件Hack
<!--[if <keywords>? IE <version>?]>
HTML代码块
<![endif]-->
<keywords>
if条件共包含6种选择方式:
是否:空、大于:
gt、大于或等于:
gte、小于:
lt、小于或等于:
lte、非指定版本:
!
<version>
目前的常用IE版本为6.0及以上
属性Hack
selector{<hack>?property:value<hack>?;}
hack取值:
_:选择IE6及以下。
*:选择IE7及以下。
\9:选择IE6+
\0:选择IE8+和Opera
[;property:value;];:选择webkit核心浏览器(Chrome,Safari)。
选择符级Hack
<hack> selector{ sRules }
需要通过层层覆盖的方式来实现对不同浏览器进行Hack的。
* html .test{color:#090;}
* + html .test{color:#ff0;}
.test:lang(zh-cn){color:#f00;}
.test:nth-child(1){color:#0ff;}