VERSIONFIVE

IE 7 のCSSハック

Article entry published at | Comments 0 | Trackbacks 0


小粋空間さんの記事にて、IE7のみに適用されるハックが更新されたようです。ご注意ください。

各ブラウザのCSSの解釈の違い(バグ)を補正するために、そのCSSのバグを逆手にとって、特定のブラウザに意図したデザインを表示させる裏技(?)である、俗にいう「CSSハック。」

そんなCSSハックは、CSSの記述としては正しくないものもあるため、あまり使わないほうがよいというのが一般的です。(どこまでをCSSハックというのか判断しにくいですが・・・)

しかし最もシェアが高く最もバグが多いブラウザが、ご存知Internet Fucking Explorer。使いたくないと言いつつもCSSハックの利用が必須とならざるを得ないという、皮肉な現状があります。

仕事で利用する機会も多いことので、備忘録としてまとめてみました。

BLOG × WORLD ENDINGさんの記事では、このCSSハックがきれいにまとめられています。

この、CSSバグの宝庫、「真のWEBのお荷物」ことInternet Fucking Explorer 6のメジャーアップデート版、IE7の日本版が先日リリースされ、バグがどこまで修正されたのか、Webクリエイターたちは戦々恐々です。

僕もIE7をインストールしていじってみたんですが、早速IE6とも違うバグがあったので、この解決法を続きにちょこっと紹介してみます。

IE6まで

バージョン6以下のIEにのみ適用される「スターハック」

* html セレクタ {プロパティ: 値;}

Mac版 IE5のみを除外する「ホーリーハック(バックスラッシュハック)」

/* Hides form IE5-mac \*/
セレクタ {プロパティ: 値;}
/* End hide from IE5-mac */

これらを使い、フロートした時におかしな余白ができてしまう現象を解決するために、目的のセレクタに「height:1%;」を指定してあげます。Mac版 IE5以外のバージョン6以下のIEにのみ適用させるわけです。

Mac版 IE5以外のバージョン6以下のIEにのみ適用されるハック

/* Hides form IE5-mac \*/
* html セレクタ {height: 1%;}
/* End hide from IE5-mac */

この複合技を「ホーリーハック」と呼んでいるところもあるみたいで、正式な呼び方はちょっとわかりません。このハックについて詳しく解説されている記事を紹介します。

これでIE6で崩れるフロート系のバグがなんとなく解決したりします。ヲイ
例えば、Peek-a-boo バグと呼ばれるバグはこれで解決します。しかし、これはIE7では修正されたとあったのですが・・・

IE7の出現

IE7では、6とはちょっと違った表示ながらも、相変わらず変な余白ができてしまうバグがありました_| ̄|○ しかもIE7はスターハックが無視されるんです。

そこで、Lucky bag::blogさんで紹介されていた「IE7 を含むモダンブラウザ向けの CSS ハックまとめ」という記事から、(小粋空間さんの「IE7 の CSS ハック」という記事よりハックの記述方法を変更しました。)

バージョン7のIEにのみ適用されるハック

*+html セレクタ {プロパティ: 値;}
*:first-child+html セレクタ {プロパティ: 値;}

これをを上記のものに足してあげて、Mac版 IE5以外のバージョン7を含むすべてのIEにのみ適用します。

Mac版 IE5以外のバージョン7と6以下のIEにのみ適用されるハック

/* Hides form IE5-mac \*/
*:first-child+html セレクタ {height: 1%;}
* html セレクタ {height: 1%;}
/* End hide from IE5-mac */

セレクタをコンマで並べて記述すると、IE7では2つ目のセレクタを無視するためかうまくいかず、それぞれheight:1%;を指定するとうまくいきました。

もしheight: 1%;のハックを施していたら、上記のようにIE7対策をした方がいいですね。

  • older-entry
  • newer-entry
  • Skip to Top

Comments 0

comment-form
Remember

Trackbacks 0

Author Information

画像 : 管理人

Web Creator
の (versionfive)

学生時代はWebにどっぷりはまり、現在は赤坂で働く会社員。Web制作とは直接関係がないモバイル関係の仕事をしてます。
几帳面で凝り性だけど、おおざっぱさはしっかり持っているO型。興味も知識も広く深くがモットーです。

Site Information

Web制作に関するブログを中心に、フォントなどもマイペースに制作。
デザインがクールでコードがクリーンなサイトを目指してます。