2006年11月 2日

【CSShack/CSSハック】いつie7リリースがあってもこれで大丈夫!なハック

こんばんわ、もうなんだかんだ言ってもIE7のリリースが目前に迫ってきました。

備えあれば憂いなし、WEBサイトの担当者の皆様がIE7のリリースと同時にクライアントや社内からクレームの雨風にさらされない様に本日は傘を提供したいと思います。

続きは以下

流行に敏感な方なら既にご存知かと思いますがIE7に有効なハックには以下のものが既に発見されています。


*+html body div{
margin:0 0 0 0;
}

しかしこちらのハックはOperaの8と9にも適応されてしまいます。まぁ無視してもいいんですが一応解決策はあります。

*+html body div{
     margin:1px 1px 1px 1px;/*for winIE7*/
}
*+html body>/**/div{
     margin:0 0 0 0;/*forOpera8/9*/
}

上の様に書けばIE7対策は完璧ですね。でも正直ダルいですね。

そんな時にはこんな方法はいかがでしょうか、
ie7は@importにメディアタイプをセットすると@importを一切よまなくなります。
これを利用してie7に問題がある箇所をこっちに移してしまうというのはいかがでしょうか?

書き方は以下のような感じです(メディアタイプはお好みで選んでください。)

@import url(.hateie7.css) screen, print, braille ;

いやあ、これで解決ですね。

ついでにie6以下だけ読み込む@importの書き方も紹介しておきます
こちらは単純なハックです、コーテーションも( )も使用せずにimportするとモダンブラウザがはじかれます。
書き方のサンプルは以下のような感じです

@import ie6.css;

これだけやってもまだ不安な方はおられますか?まだ心配なら更に以下のコードもどうぞ
これでie5.5以下に対応になります

@import\**\"ie55.css";

ついでにie5以下も

\@import url("ie5w.css");

復習ですがおなじみのバックスラッシュをつかったMacie用のハックはこんなんです

/*\*//*/
@import "ie5m.css";
/**/

0トラックバック

このブログ記事を参照しているブログ一覧: 【CSShack/CSSハック】いつie7リリースがあってもこれで大丈夫!なハック

このブログ記事に対するトラックバックURL: http://kennsu.jp/mt/mt-tb.cgi/56

コメントする