Netscape 4 とスタイルシート

Netscape4のスタイルシート関連問題

Netscape Communicator 4.xはスタイルシートを読み込む事が出来るが、その実装にはかなりのバグがあり… とは簡単に言えば、Internet ExplorerやNetscape7などとは違い、スタイルシートを使うとまともにWebページが見られない、表示できない、という問題なのです。

そんな問題があるものを何故使うのか。それはそれ以外に選択肢が存在しないからです。Windows以外ではいまだそれらは使われています。

これらの問題に配慮してスタイルシートを使用するのは、かなり大変です。実際の所問題があるのはNetscapeなので、Webサイト側がそれらのブラウザに対して配慮する必要など無い、というのが大多数のようです。

しかしながら、HTMLに改変を加えずに、しかもかなり簡単にNC4対策が出来る方法があるのです。

@mediaを使う

<link rel="stylesheet" href="style.css" type="text/css" media="all">

とすればスタイルシートが読み込まれないというバグを利用し、NCでもデザインが崩れずにWebページを見る事が出来るのですが、すべてのHTMLを修正する必要があります。そこで、外部スタイルシートの方に@mediaを入れてしまえば非常に楽です。

style.cssファイルの中身

@charset "shift_jis";
@media all {
〜〜スタイルプロパティ〜〜
}

ここで、@media all { 〜 }の中身は、NCは全く読み込みません。外部スタイルシートにちょっとした改変を加えるだけで良いのです。

さらにこの方法の良いところは、@mediaの外にもスタイルプロパティを書く事が出来るという事です。それによって、NCでもまともに動くスタイルを使用する事が出来ます。問題のあるスタイルだけを@media内に入れるという事が出来るのです。

この方法はNCに対してかなり有効であると思います。ですがもしかしたら一部のNetscape4.xでは不都合が生じるのかもしれません。そのような時は連絡をお願いします。