お断り
最初にお断り。
以下の文章は、2000年2月に書いて、2002年10月に緒言と付言を追加したものです。しかし、この文章は、2010年10月現在、ほとんど意味が無いものになりました。
書いた時から既に技術的には意味が無かった、と言っても良いのですが、現在では、Netscape 4.x の問題は、もはや、完全に過去の問題となっています。
現在、Web 制作者が頭を悩ましているとしたら、Netscape 4.x ではなくて、Internet Explorer の 5.x, 6, 7 あたり、中でもいまだにユーザーが多い Internet Explorer 6 でしょう。これを「IE6問題」と言うらしい。
この「IE6問題」についても、一定以上の技量を持った Web 制作者の間では、実務的には、ほぼ片が付いているようです。(ただし、問題の回避方法について、まとまった実務的な知識を得るには、どこに行けばよいか、というのは、ちょっと厄介な問題です。いろいろと流儀があるようで、情報が錯綜しているように見えます。是非ここを読みましょう、という所を僕は知りません。)
2010年10月
緒言 : 2002年10月
「エージェント集計」を見ると、現在でも、Netscape Communicator(Navigator) 4.x を使っている人の数は、少ないと言えば少ないが、無視できるほどに少ないとは言い切れない。そのためか、Netscape Communicator(Navigator) 4.x のデタラメかつバグバグな CSS 解釈に頭を悩ませて、対応策に苦慮している Web ページ作者は、いまだに、非常に多いようである。「過ぎた日のキーワード」を見ると、"Netscape", "Navigator", "4.7", "CSS", "スタイルシート" などのキーワードで Web を検索した結果、このサイトにやって来る人が結構多いのだ。
残念ながら、このページには、大して有用な情報はありません。ごめんなさい。
2002年10月現在、softark.net のすべてのページは、Netscape Communicator(Navigator) 4.x では CSS がオフになるように書いている。「対策案3. NN(NC)4.xのmedia属性解釈のバグを利用して、外部スタイルシートを読み込ませないようにする」を参照のこと。
以下は、二年半ほど前、僕が Netscape Communicator(Navigator) 4.7 と何とか折り合いを付けようとして苦労した記録だ。
2002年10月
Netscape Communicator 4.7
Netscape Communicator 4.7 をダウンロードしてインストールした。うーん、こりゃひどい。何がって、こいつではスタイル・シートを使ったページをまともには見ることが出来ない。どうしてくれよう。
Internet Explorer
かなり昔に Netscape Navigator を使っていたことがあるが、何時の頃からか、Microsoft Internet Explorer を使うようになっていた。最近では、IE しか使っていない。
MS による IE の無作法な押し付けには腹も立った。例えば、MS Office をインストールすると、IE のセットアップ・アイコンがデスクトップ上に勝手に置かれていた。Developer Studio をインストールすると、ヘルプを見るのに必要だからと IE のインストールを半ば強要してきた。手段を選ばず、というか、やりたい放題、というか。
面倒くさかったので、MS の言いなりになった。製品自体は、IE も 3.x 以降は NN とさほど機能の差があるようには見えなかったから、まぁ、それでも良いや、と。長いものに巻かれるつもりになれば、それはそれで、一種の煩わしさから解放されることになって、かえって楽チンな面もある。MS にして見れば思う壺という所か。
ホームページ・ビルダー 2001
最近になって、久しく中断していたホームページの作成を再開した。ツールも、ホームページ・ビルダー 2.0 から、同 2001 へと 1000 倍以上パワー・アップした。そして、カスケーディング・スタイル・シート (CSS) という新しい手法を覚えて、少しは使えるようになった。
HPB 2001 では、プレビューに IE のコンポーネントを使用する。メインとなるウィンドウに「標準」「HTMLソース」「プレビュー」という三つのタブがあって、それぞれ、ビジュアルな編集、ソースの直接編集、プレビューという機能を受け持っている。「標準」というビジュアル編集画面は、それ自体が一種のプレビュー画面でもあるのだが、編集機能を担当している関係上、コメント記号やレイアウト区画の矩形を表示することが出来るなど、完全なプレビューとは少し異なる表示となる。
しかし、なぜ HPB 2001 は、プレビューに IE のコンポーネントを使用することにしたのだろう。
手頃に利用できるものだったからか。しかし、「標準」の画面は、HPB 2001 が自前のレンダリング・エンジンを持っていることを証明しているのではないか。何も、HTML や CSS の解釈が異なる可能性のある、別の会社のコンポーネントを使わなくても、プレビュー機能を自前で作ることは簡単だったはずだ。
それとも、HPB 2001 は、IE を業界標準と認めており、たとえ HTML や CSS の解釈に違いがあろうとも、IE が表示する結果を無視することは出来ないと考えたのか。どうも、そんな気がする。
事実、「標準」と「プレビュー」で、明らかに HTML や CSS の解釈が異なり、表示が大きく違う場合が存在する。特に、CSS で float や clear を使用した場合に、違いが目立つ。ただし、どちらが間違っているかは、一概には言えないように思う。
Netscape の惨状
要するに、HPB 2001 と IE の解釈の違いが気になりだしたものだから、「二大ブラウザ」のもう一方の雄、Netscape のブラウザを思い出したのだ。それで、最新版をダウンロードして、インストールし、最近作った(または模様替えした)ページを表示させてみた。
びっくりした。Netscape は、いったいいつの間にこんな惨状に陥ってしまったのだろう。
ひどいもんだ。スタイル・シートを使っているページは、これでは見る気がしないだろう。画像と文字が重なるわ、画像同士が重なるわ、テーブルの罫線が見えないわ、センタリングした筈の区画が左端に寄るわ、もう、ぐちゃぐちゃである。
いや、ぐちゃぐちゃと言ったが、画像も入れず、TABLE も入れず、float も使わなければ、特に大きな問題は無いようだ。つまり、こういう文章だけのページは、ほぼ問題ない。IE で見るより、少々しょぼいと言うか、不細工な感じがするが、多分、気のせいだろう。
しかし、画像を入れると、途端におかしくなる。たとえば、楽しい日記の2月14日。たとえば、裏夜食日記の2月12日。また、たとえば、偽偽夜食日記の2月19日。float させていなくても、おかしくなる。画像が文字を隠したり、画像同士が重なったり、要するに、絵日記は全滅の態である。
line-heightがあるとIMGもそれだけしか改行されないのだと風の噂【謎】に聞く。やってみると、その通りだった。で、スタイル・シートを少々修正。しかし、依然として float させるとうまく行かない。二行目からは回り込むが、一行目が必ず画像の下に隠れてしまう。しかも、外部スタイル・シートでなく HTML 内で float を指定すると、これはこれで挙動が異なって、何かヘン。では、というので、非推奨の align 属性で回り込みを指定すると、画像の下端を超えても文字列のコラム幅が復元しない(回り込みが解除されない)。どうなってんのか、ワケワカメだ。いや、バグリまくりだ。もう、わしゃ、知らん。
Master Compatibility Chart というので見ても、Netscape の対応は Microsoft に比べて随分遅れているようだ。また、float や clear は特に実装が難しい所なので、ブラウザによらずバグが多いようだ。ただ、IE 5 はかなり良くなった、とも書かれている。
どうしよう
どうしようかと思う。
そう、絵日記。The Fundoshi Run In Sapporo みたいなもの(どこからこんなの探して来ますか、佐々木さん)。あるいは、注釈付きのフォト・アルバム。要するに、文章と画像が適度に混在した文書を作りたい。で、そういうものに付き物【謎】の、(1)画像のセンタリング、(2)画像の左寄せ+文章の右流し込み、(3)画像の右寄せ+文章の左流し込み、(4)全体のセンタリング、をやりたい。と言うか、岩座神の方にはそういうページが既に有って、レイアウトの手段として TABLE を使っているので、それを CSS で書き変えたかった。
ところが、要するに、Netscape Communicator(Navigator) の都合に合わせたいなら、float を断念するか、TABLE を使って擬似的な段組を行うかしか、方法が無いようだ。
こっちのサイトは、Netscape(およびそのユーザー)を見限っても良いようにも思う。他人の事に口出しする必要は無いのであって、Netscape Communicator(Navigator) を使っている人が自分で判断すれば良い。誰も Netscape Communicator の使用を強制している訳ではないのだから、スタイル・シートをもう少しまともに扱えるブラウザ(IE 4 または 5)に鞍替えしたくなったら、鞍替えすれば良い。どうしても Netscape に対して義理立てしたいなら、ぐちゃぐちゃのページを我慢して見るか、スタイル・シートをオフにして味気ないページを見るかすれば良い。と、まぁ、そういうような事で。
しかし、Netscape を見限ることは、60 日後【謎】に再検討する条件を付けて、しばらく保留することにする。そして、当面は、float を諦める。
しかし、岩座神の方では、見た目の極端なディグレードは避けたい。そして、Netscape も出来るだけサポートしたい。絵日記のような文書がメイン・ディッシュだし、うぶな良家の子女が来訪するかもしれないし。せっかく追放したレイアウト目的の TABLE だが、復活させなければならないようである。鬱陶しいことだが、やむを得ない。
どうしよう(再考)
ということで一件落着と思ったのだが、佐々木さんから float やら align やらを突き付けられてしまった。何だ、出来るじゃん。いや、何で出来るのだ、僕は出来なかったのに。
一番単純な形式まで落としてやれば、Netscape Communicator でも float や文章の回り込みを処理できる、という事らしい。
あれこれ試した結果、Netscape Communicator のためには、スタイル・シートで IMG の margin や padding を指定してはいけない、という事のようだ。そういう事で問題を回避できるなら、スタイル・シートを少し書き変えて、float を復活させようか。日記の2月14日も読めるようになったと思うが、どうだ。
岩座神の方も、上の線で行けるなら、そうしようと思う。しかし、ちょっとでもレイアウトの構造が複雑になると、いろいろと不具合が出て来ますな、Netscape は。DIV をネストしてはいけない、ってな制約があるのかもしれない。もう少し、あれこれ試みることにしよう。
TABLE をレイアウトの目的は使用することについては、Netscape ユーザーの佐々木さんまでが「それは反則だ、反則するぐらいなら Netscape を無視しろ」と言う。それもそうですな。
Netscape だが、結局のところ、CSS をもう少しまともにサポートしたブラウザを出すか、それとも、大半のユーザーから見限られるか、どちらかしか無いわけで、どっちにせよ、今のままの(性能の悪い・バグの多い)ブラウザは、近い将来、無視できるぐらいにシェアを低下させるだろう。とすれば、何も、そういうブラウザのために必要以上に気を遣わなくても良い訳だ。
結論
『牧野日記』でも『岩座神レポート』でも、ページの見た目のレイアウトは CSS による。レイアウト目的に TABLE を使用することはしない。
当面、Netscape にも少しは気を遣う。少なくとも、Netscape Communicator 4.7 でも、表示が乱れるけれども見えなくはない、ということは確保したい。
なお、アメリカでは Internet Explorer の市場シェアが 80 % を超えたそうである。ZDNN AnchorDesk: ブラウザ戦争は“本当に”終わった を参照のこと。
2000年2月
付言 : 2002年10月
緒言でも記したように、2002年10月現在、softark.net のすべてのページは、Netscape Communicator(Navigator) 4.x では CSS がオフになるように書いている。
2002年10月
最終更新日 : 2011-01-19