CSS IE6CSSハック | アメブロ向上企画書ーCSSでカスタマイズ、オリジナルなスキンに挑戦!

CSS IE6CSSハック

Plan-note  のブログを作ったときに

IE6はPNGの透過画像がど~しても利用できませんでした

     参考  透過PNG・・・できたらいいな~



そのときに使ったカンタンなハックを紹介します

で、

http://ameblo.jp/plan-note

こちら・・・・

IE6 と それ以外のブラウザーで見たときと画像が違うってご存知でしたか?

色々試しましたが・・・ ムリと判断して 

IE6だけは別の透過していないPNG画像か透過GIF画像を使っています



この下にどんな画像が背景として表示されていますか? ↓ 





もし・・・IE6をつかってコレをご覧になっている場合はコチラの画像・・・・


IE6 以外でご覧になっている場合はコチラが表示されていると思います







一番カンタンな方法だと思います


#ie6hcss{
background-image:url(IE6以外で表示する画像のURL) !important;
background-image:url(IE6で表示する画像のURL);
background-repeat:no-repeat;
background-position:center;
}


ここで使っている !important; どこかで見たことあると思います

CSSの適用優先順位を上げます

このブログではCSSは最後に付け加えてくださいって紹介しています

CSSは後に書かれているものの方が適用されるんです

でも  !important が付いている場合は ドコに書かれていても優先して適用されます


これは同じセレクタ内で同じものを後から指定し直せば!importantが無視されるというIE6のバグ利用しています

IE6以外では !important が付いていますから当然 IE6以外で表示する画像のURL が表示されますが

IE6ではバグのため !important が無視されてCSSのルール通り後に書かれている IE6で表示する画像のURL が表示されます

背景以外にも使えますのでIE6だけ・・・って困っている場合はお試し下さい





CSSハック・・・

インターネットエクスプローラ(IE)、Firefox、Opera などといったブラウザー

あるいは同じブラウザーでもバージョンによってCSSの受け取り方の違いによって表示に違いが出てくる場合があります

そんな時に各ブラウザーの特徴、バグなどを利用して同じように表示させたりする方法です