IE5.5だけに効くCSSの書き方 Tantek Box Model Hack

CSS Hackって、実はあんまり好きじゃないんですよね。
W3Cに則らない的な意味で。ええ。
でもまぁ背に腹は代えられません。もう最悪IE5.5。


IE5.5はpaddingの解釈にバグがあり、きちんと解釈されません。
width内の大きさとしてとらえちゃうので、ちゃんとwidthが
指定されないわけ。


でもシビアに長さ指定したいときだってあるのが人間でして、
そんなときはどうするか。はい、CSSをハックしましょう。

#box {
  color: red; /* for IE5.5 */
  voice-family: "\"}\"";
  voice-family: inherit;
  color: blue; /* for Modern browsers */
}

こういう風にvoice-familyを隔てて上ではIE5.5用の、下では
その他のモダンブラウザ用のCSSを記述する事ができます。
Tantek Box Model Hackというそうです。すごい。


理屈は、バックスラッシュエスケープという小技を使う事。
特殊文字のように、「バックスラッシュをつけた直後の文字は
特殊な意味を持っていてもその意味をキャンセルする」ように
できるようになるんですって(ex. 改行の無効化)


でもIE5.5はそれに対応していないので、その穴をついた
ハックという事。へぇぇぇ。


IE5.5を回避/IE5.5だけに適用|WALK SLOW, AGAINST THE FLOW.|BLOG
http://www.110chang.com/blog/2007/02/ie55ie55.html


よく解るかもしれないバックスラッシュエスケープ | Blog hamashun.com
http://www.hamashun.com/blog/2007/01/post_18.html


Tantek Box Model Hackについての考察 | Blog hamashun.com
http://www.hamashun.com/blog/2007/01/tantek_box_model_hack.html