css hack 常用的有 \9,\0(ie11版本以下都会应用) \9\0 (ie9+)
我真实测试的是:
\9 或者 \0 对(ie8 ie9 ie10 )都有效
但是有时候,我们使用绝对定位的时候,最常用的使用 left:50%; transform:translateX(-50%);
这对ie9以上的浏览器都支持。但是ie8不支持,但是如果css hack 写成了:
span{
left:-100px\9;
}
这个时候,ie9 ie10就会跟着变化,但是我们并不想要ie9 ie10浏览器应用这个样式(ie9 ie10可以直接应用了left:50%; transform:translateX(-50%);
),那么可以使用下面的只针对ie8应用此样式:
span{
left:-100px\9;
}
:root span{
left:50%;
}
这样,ie8应用最上面的代码,但是ie9 ie10 就会应用下面的额代码,从而把上面的代码覆盖掉!!!
从而解决了问题!