4

Internet Explorer 10 で jQuery メニューが壊れました。以下の例のように、CSS に小さな修正を適用することで、これを修正できます。

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

/* For all other browsers ------*/
margin-top: 2px;

これらのケースを CSS インクルードに条件付きで適用する方法はありますか?

ブラウザのスニッフィングが理想的ではないことはわかっていますが、これはうまくいくようです:

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

1 に答える 1

8

メニューで既に JavaScript に依存していることを確認する<body>と、userAgent 文字列に基づいて、using JavaScript コードにクラスを追加できます。

JavaScript

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

..次に、CSS で Internet Explorer 10 をターゲットにします。

CSS

/*IE 10 only */
.ie10 .myClass {
    margin-top: 1px;
}
于 2013-03-21T15:08:46.050 に答える