仅适用于Internet Explorer 10的条件CSS

QFD*_*Dev 4 html css conditional internet-explorer-10

Internet Explorer 10打破了我的jQuery菜单.我可以通过对我们的CSS应用一个小修订来解决这个问题,如下例所示.

/* For Internet Explorer 10 ------*/
margin-top: 1px;

/* For all other browsers ------*/
margin-top: 2px;
Run Code Online (Sandbox Code Playgroud)

有没有办法在我的CSS中有条件地应用这些案例?

我知道浏览器嗅探并不理想,但这似乎工作正常:

if ($.browser.msie  && parseInt($.browser.version, 10) === 10) {
    $(".jMenu li ul").css("margin", "1px");
}
Run Code Online (Sandbox Code Playgroud)

xec*_*xec 8

看到您已经依赖于菜单的JavaScript,您可以<body>根据userAgent字符串为使用JavaScript代码添加一个类:

JavaScript的

if (navigator.userAgent.indexOf("MSIE 10") > -1) {
    document.body.classList.add("ie10");
}
Run Code Online (Sandbox Code Playgroud)

..然后在CSS中定位Internet Explorer 10

CSS

/*IE 10 only */
.ie10 .myClass {
    margin-top: 1px;
}
Run Code Online (Sandbox Code Playgroud)