2015-11-05 106 views
1

我有问题。 我必须改变我的网站上的CSS。所有作品在IE11和IE8上,但我必须做任何解决方法,以在IE11兼容模式下使用IE8。我想用其他的CSS来改变元素的位置,但我不知道如何使用它。只有IE8或IE11没有问题。但问题出在IE8和IE8兼容模式之间。CSS仅适用于IE11中的IE8可兼容模式

我该怎么办?

+0

得到它在IE8的工作及以下,把这个头' <链接rel =“stylesheet”type =“text/css”href =“path/to-your-css/file.css”>'并在那个'.css'中放入你的CSS修补程序 –

+0

确保包含上面的AFTER你包括你的主'css'文件,使用相同的css规则名称只包含修正的规则 –

+0

是的,我知道,但问题是IE8和IE8之间IE11仿真 - 在IE8上一切正常,但仿真不。 – Soft

回答

0

如果你不介意使用JavaScript,那么你可以通过使用检测IE11:

if (document.documentMode == 8) { 
    var jscriptVer = Function('return /*@cc_on @[email protected]*/;')(); 
    var is8on11 = jscriptVer == 11; 
    if (is8on11) { 
     document.documentElement.className += ' is-ie8-on-ie11' 
    } 
} 

保持功能(使所需的注释不被压缩移除)。不要随着函数中的代码或注释进行更改(以避免IE版本中的一些怪癖的方式编写)。

然后,您可以使用CSS来覆盖如下规则:<! - [如果LT IE 9]>

html.is-ie8-on-ie11 .some-target-class { 
    width: 20px; 
}