[CSS]IE6でよく遭遇する6つのバグとその解決方法

CSS Trickのエントリーから、IE6でよく遭遇する6つのバグとその解決方法の紹介です。

IE CSS Bugs That’ll Get You Every Time

ボックスモデルのバグ

ボックスモデルのサンプル

上記の指定をした場合、IE6ではborderで囲まれた領域が「100px」となり、最新のブラウザでは「124px」となります。

解決方法

paddingを使用する場合には、ボックスに使用しないで、内包する要素に指定を行います。

マージンが二倍になってしまうバグ

上記の指定をした場合、IE6ではマージンが「40px」となり、最新のブラウザでは「20px」となります。

解決方法

「display:inline;」を付け加えるか、空白の指定に「margin」ではなく「padding」を使用します。

min-width, min-heihgtと同等の指定

IE6では、「min-width」「min-height」の指定は有効になりません。

解決方法

CSS Hackを使用して、指定します。

Stepdownバグ

Stepdownバグのキャプチャ

通常、フロートした要素は横並びになりますが、IE6で階段状になるバグがあります。

解決方法

「display:inline;」指定を行います。

hover擬似クラスをa要素以外にも対応

IE6ではhover擬似クラスはa要素にしか対応していません。最新のブラウザではa要素以外にも対応しています。

解決方法

Whatever:hoverの「csshover.htc」を使用すると、他の要素にもhover疑似クラスを利用することができます。

透過PNGを透過表示に対応

IE6では、透過PNG画像が、透過しないで表示されてしまいます。

解決方法は、The Different Techniques for Applying the PNG Hackでいくつか紹介されていますが、そのうち2つを紹介します。

HTCファイルを使用した解決方法

IE PNG Fix v1.0 RC4の「iepngfix.htc」を使用すると、IE6で透過PNGが利用できます。

JavaScriptを使用した解決方法

PNGHackの「pnghack.js」を使用すると、IE6で透過PNGが利用できます。
pnghack.jsの使用方法

top of page

Trackback

leave your Comments

※承認制のため、即時には反映されません。
※匿名、通りすがりさんなどへの回答は控えさせていただきます。

Comments

通りすがり

on 2008年4月25日

バグと仕様を混同していませんか?
相変わらず情報の転載しかしないのですね。

コリス

on 2008年4月25日

バグのものと未対応のものは、見出しで区別して記載しています。
PNGも表示自体は可能なので、バグでもいいかもしれません。

逆に聞きますが、あなたはバグを仕様と言う人ではないですか?

> 相変わらず情報の転載しかしないのですね。

クリップした情報を紹介するのが主目的なサイトなので。

コリス

on 2008年4月25日

> す○○○ さん
はい、大丈夫です。

on 2008年5月17日

stepdownバグは、ある特定の条件が揃った時しか遭遇しないと思いますが、その辺詳しく解説してもらえませんか?

websocial.jp

on 2008年5月29日

[CSS]IE6でよく遭遇する6つのバグとその解決方法 | コリス

コーディングもやる人間にとっては重宝するエントリです。

Web Social

on 2008年5月29日

Web SocialというWebデザイン専門のソーシャルニュースサイトの管理人です。
> 相変わらず情報の転載しかしないのですね。
このような意見があることに驚きました。私自身Webサイトの制作に携わる者ですが、コリスさんの記事はいつも役に立つものばかりでよく参考にさせていただいております。
私に限らず、多くのかたに有益な情報であると考えています。
コリスさん、応援していますので今後もよろしくお願いいたします。
いつもお世話になっているので、コメントさせていただきました。

コリス

on 2008年5月29日

> Web Socialの管理人 さん

ありがとうございます。
少しでもお役に立てて、よかったです :-)

小悪魔.comブログ

on 2008年8月5日

IE6でバグってた。。

フジコです。満喫きました。 満喫で小悪魔.comを見て驚愕しました。 TOPペ…

nana

on 2009年6月20日

いつも拝見しております。
ためになる情報の紹介ありがとうございます。

いまStepdownバグに悩まされており、こちらのページに辿り着いたのですが、残念ながら「display:inline;」では解決できませんでした。
さらに調べたところ、aではなく、liにfloatを効かせることで解決しました。
http://clip.livedoor.com/page/2564148
ほかに同じような方が来られるかもしれないので、情報共有のためコメントしておきますね。

コリス

on 2009年6月20日

> nana さん

情報、ありがとうございます。

ITキヲスク | IE6の頻出CSSバグいろいろと、それに対処するハック術

on 2009年10月28日

[...] [CSS]IE6でよく遭遇する6つのバグとその解決方法 | コリス [...]

芳立五蘊

on 2009年12月23日

IEのシェア低下に安堵

※ 「@IT」 >> 「IE7を逆転 バージョン別シェアでFirefox 3.5がナンバー1に」ブラウザ市場におけるIEのシェア下落傾向が顕著になってきた。一言でいうなら、良い傾向である。ウェブ屋…

CSSで気をつけたい事やつまづいたときのちょっとしたこと | Quarter

on 2010年6月4日

[...] 参考:[ CSS ]IE6でよく遭遇する6つのバグとその解決方法|coliss [...]

ワードプレスのプルダウンメニューの子孫メニューがIE6で出ない!! | KT-design information

on 2011年2月23日

[...] [CSS]IE6でよく遭遇する6つのバグとその解決方法 | コリス [...]

top of page

©2011 coliss