未だにIE6〜最新まで全部なんとかして!みたいな案件は少なくないので。
スクリプトやCSSの振り分けに便利な条件付きコメントのまとめ。
<!–[if IE]> |
IE全部。 ただし、IE10の標準モードとQuirksモードでは条件付きコメント自体が廃止 されてるので多分反応しない |
<!–[if IE n]> <![endif]–> |
バージョン n のIEだけに反応。 [if IE 6] ならIE6限定。 |
<!–[if gte IE n]> <![endif]–> |
バージョン n 以上のIE限定。 |
<!–[if gt IE n] <![endif]–> |
バージョン n より上のIEだけに反応。 Greater-Than の略でイコールは含まれないため、「より上」となる。 [if gt IE7] だと、IE7は含まないのでやっぱりIE8か9かみたいになる。 |
<!–[if lte IE n]> <![endif]–> |
バージョン n 以下のIE限定。 lteはLess-Than Equal。つまり以下って意味。 高速データ通信でもなければ音楽ユニットでもありません。 |
<!–[if lt IE n]> <![endif]–> |
バージョン n 未満のIE限定 Less-Than の略で、やっぱりイコールがないので自身は含まない。 IE9未満にサポートスクリプトを読ませる事が多いので、 [if lt IE 9]は結構使う事が多いです。 |
<!–[if !IE n]> <![endif]–> |
バージョン n 以外のIE。 ビックリマークはプログラムとかでは「否定」の意味があります。 [if IE6]だったらIE6以外ってことですが、IE7やIE5は対象にならないので いまいち使い勝手は良くないですね。 ただ、特定のタグがどうしても特定のバージョンでのみ表示がおかしくなる 場合に使うこともあるかもしれません。ただその場合は、そのCSSの記述 そのものを見なおしたほうがいい場合も…。 |
<![if !IE]> <![endif]> |
IE以外。 あと、地味にコイツだけ書き方が違う上に、バリデートも通らなくなります。 |
※IE10では相互運用性の向上と HTML5 準拠により標準モードとQuirksモードで条件付きコメントが廃止されてるため、条件付きコメントはただのコメントとして扱われるそうですが、これまでのIEを見ていると、なんだか不安になりますね。。w
コメントする