スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
 |   | 

アンダースコア・ハック(Underscore Hack)

  • 2006/04/09(Sun)
  • カテゴリー:CSS

アンダースコア・ハック(Underscore Hack)とは、CSSの特殊な記述によるブラウザ振り分けの方法のひとつです。

全てのブラウザがCSSの仕様に対して正確に解釈をするわけではなく、現在はWeb標準完全サポートへの過渡期であるので、その現状でもできるだけ多くのブラウザで意図した通りの同様の表示を求める為に、裏技的な役割を持つCSSハックと呼ばれる技術が編み出されたようです。

今回のアンダースコア・ハックはその中でも特に簡単なもののひとつで、WinIEのみにCSSの指定を適用させる為のものです。

  1. p {
  2.     color:#f00; /* WinIE以外 */
  3.     _color:#00f; /* WinIE用 */
  4. }

上記のように同じプロパティの指定を繰り返し、それぞれ値を変えて記述しますが、この時後に記述する方のプロパティに「_」(アンダースコア)を付けてやります。
(※記述順に注意)

プロパティの前にアンダースコアを付ける記述は正しい記述ではないので、WinIE以外のブラウザではこの指定を完全に無視します。

ところがWinIEだけは無視せずにこれを解釈する為、後に書いた記述が優先されるというCSSの規則から、color:#f00;の指定をcolor:#00f;で上書きされた状態になります。

これによってWinIEに対してのみにCSSの指定をしてやることができるので、WinIE特有のバグに対処できる、ということになります。

ただし、冒頭で述べたようにCSSハックはあくまで裏技的である上、正しい記述の仕方ではありません。
今後Web標準へのサポートが進むにつれ、ハックが無効になる恐れもあるので、多用することは避け、「どうしても」という時にのみ使用するようにしなければ、後になって修正が大変になると思います。

【関連記事】
CM:0  |  TB:0  | 

コメント(-0件)

コメント投稿

コメントフォーム
項目名 記入欄

管理者だけが読めるようにする

トラックバック(-0件)


<< !importantを使ったIEバグ対処法

CSSで擬似フレームページ >>

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。