web-dev-qa-db-ja.com

ie9のみのハックが必要

IE9のみをターゲットにするハックはありますか? IE9でのみ問題が発生しています。他のブラウザは正常に動作しています。使ってます \9、しかしそれはIE8にも影響を与えています。

条件付きコメントを使用したくない。

10
supersaiyan

これを使うことができます:root #element { color:pink \0/IE9; } /* IE9 + IE10pp4 */

21
sandeep

私もこれを行うメディアクエリを思いつきました。 IE9のみを指定します。

@media all and (min-width:0\0) and (min-resolution:.001dpcm)
{
    #div { color:red; }
}

Msie 9以上のメディアクエリを含む、私が解決した他のものは、私のgithubページにあります: https://github.com/jeffclayton/css_hack_testing -これらのほとんどは私が送信しました含めるためにbrowserhacks.comにアクセスしてください。

2017 UPDATE:これが機能することを確認するために、これと私が取り組んだ他の多くのために、ここにライブテストページを作成しました http: //browserstrangeness.bitbucket.io/css_hacks.html およびMIRROR: http://browserstrangeness.github.io/css_hacks.html

自分のサイトにコードをコピーするときは、min-width:0\0(ゼロ-バックスラッシュ-ゼロ)であることに注意してください。 IE9を他のブラウザーと区別するために機能しないmin-width:0(単一のゼロ)と混同しないでください。

15
Jeff Clayton

別の方法があります!

_:root #div { background: #fff \0/IE9; }  /* IE9 */
_

_:root_疑似セレクタを使用します。これは、IE [9]でこのメソッドを優先して@media all and (min-width:0)部分が削除されたために機能します。

ただし、すべてのセレクターで機能するわけではないため、これは安全な方法ではないことに注意してください。使用するのに最適なのは条件付きコメントです。条件付きコメントのサポートを削除したIE10を除いて、Internet Explorerの異なるバージョンをターゲットにする最も安全で簡単な方法です。

5
Kyle

私のIE9エミュレータでは、リストされているソリューションはどれも機能しませんでした。たとえばIE9のチェックボックスのサイズを適切に変更できるようにした唯一のハックは次のとおりです。

/* IE9 */
:root input#my-checkbox {
    width:20px !important \ ;
    height:20px !important \ ;
    box-sizing:content-box !important \ ;
}

私はわからないこれがIE8やIE10などにも影響するが、とにかくそれらを個別に処理する条件文がある場合。

うまくいけば、これは誰かを助けます。

0
cbmtrx