fontまわりのハックについて

2007年12月19日

Filed under: CSS — admin @ 3:05 PM

* (ユニバーサルセレクタ)ですべてのフォントサイズを100%に
して、そこからタグごとの指定をするのが定石です。

CSS:
  1. * {
  2.       font-size: 100%;
  3. }
  4. p {
  5.       font-size: 80%;
  6. }

この記述をハックを使用して記述するとこうなります。

CSS:
  1. body {
  2.       font-size: 12px; /*モダンブラウザ*/
  3.       _font-size: x-small; /*IE*/
  4. }

でもこのハックはIE7では有効ではなくて、font-size: 12px; で
絶対指定することになってしまいます。
なので、「*(アスタリスク)ハック」を使用します。

CSS:
  1. body {
  2.       font-size: 12px; /* モダンブラウザ */
  3.       *font-size: small; /* IE 7 */
  4.       *font: x-small; /* IE 6以下 */
  5. }

ショートハンドのfont プロパティには、font-sizeとfont-familyの値が
必須となります。なので、3行目の技術は不正なプロパティとなり、
仕様に準拠しているブラウザでは無視され、IEだけ読み込んでしまいます(笑)

で、これらの文法違反をクリアしようとするとこうなります。

CSS:
  1. body {
  2.       font-size: small !important; /* IE 7向け */
  3.       font-size: x-small; /* IE 6以下 */
  4. }
  5. html>/**/body {
  6.       font-size: 13px; /* モダンブラウザ向け */
  7. }

コメントはまだありません »

コメントはまだありません。

この投稿へのコメントの RSS フィード。 TrackBack URL

コメントする