非到万不得已最好不用css hack
1. 条件Hack
语法:
<!--[if <keywords>? IE <version>?]>
HTML代码块
<![endif]-->
取值:
<keywords>
if条件共包含6种选择方式:是否、大于、大于或等于、小于、小于或等于、非指定版本
- 是否:
- 指定是否IE或IE某个版本。关键字:空
- 大于:
- 选择大于指定版本的IE版本。关键字:gt(greater than)
- 大于或等于:
- 选择大于或等于指定版本的IE版本。关键字:gte(greater than or equal)
- 小于:
- 选择小于指定版本的IE版本。关键字:lt(less than)
- 小于或等于:
- 选择小于或等于指定版本的IE版本。关键字:lte(less than or equal)
- 非指定版本:
- 选择除指定版本外的所有IE版本。关键字:!
目前的常用IE版本为6.0及以上,推荐酌情忽略低版本,把精力花在为使用高级浏览器的用户提供更好的体验上
IE10及以上版本已将条件注释特性移除,使用时需注意。
属性Hack
语法:
selector{<hack>?property:value<hack>?;}
取值:
- _:
- 选择IE6及以下。连接线(中划线)(-)亦可使用,为了避免与某些带中划线的属性混淆,所以使用下划线(_)更为合适。
- *:
- 选择IE7及以下。诸如:(+)与(#)之类的均可使用,不过业界对(*)的认知度更高
- \9:
- 选择IE6+
- \0:
- 选择IE8+和Opera15以下的浏览器