http://blog.ishiro.com

2007/5/13 日曜日

IEではUTF8のBOMありは使えない

Filed under: css — ishiro @ 5:32:33

IEの互換モードだと文字サイズの扱いが他のブラウザと異なります。他のブラウザで font-size: small; でよいものが IE だと font-size: x-small; でなければならない。つまり px や em 指定ではなく small や large など比較サイズで記述すると IE とその他のブラウザではフォントサイズが異なってしまいます。かといって px 指定を使うと IE ではフォントサイズが固定されてしまうためユーザビリティ的によろしくありません。

そこで最もスマートな解決方法は次だと思っています。

  • IEの標準モードを使用する
  • フォントサイズ指定はsmallやlarge等の比較サイズを使用する

IEの標準モードを使用することによりフォントサイズが他のブラウザと共通化されます。当然ですがフォントサイズ固定はよろしくないのでpx指定は使いません。

ところが「IEではUTF-8のBOMありで保存すると標準モードにならない」というバグを発見しました。このバグに気付くのに2時間もかかってしまいました…(涙) IE6でもIE7でも同じでした。

IEの「先頭行にXMLの宣言を書くと標準モードにならない」というのは有名なバグですが、それと同じなのでしょう。BOMヘッダの先頭3バイトが原因です。この3バイトは目には見えないのでなかなか発見できません。さいてー。

結論として「IEではUTF-8のBOMありは使えない」として覚えておけば良いですね。



コメント (0) »

この記事にはまだコメントがついていません。

コメント RSS TrackBack URI

コメントをどうぞ