軽々しくいこう! 3「同じなのに違うこと」


ここをお読みの皆様。JavaScript(じゃばすくりぷと)という物をご存知でしょうか?
HTMLは動かない「静」の表現とするのなら、JavaScriptは動きのある「動」の表現。スクリプト言語と呼ばれる言語をHTML内に記述して使用します。
みなさんもどこかで一度は見たことがあると思います。サイトのトップページに「今○○時ですよ♪」という時刻がリアルタイムで表示されたり、イラストにカーソルを合わせたら絵が変化したり。高度な技術も必要としますが、簡単なゲームも作成可能です。
つまり、そういった事をするのがJavaScriptなのである。


ここをお読みの皆様。スタイルシートという物をご存知でしょうか?
HTMLは、基本的に文章などを表すための命令の言語ですが、スタイルシートは同じパターンのレイアウトを表示させる命令をする言語です。
何種類かありますが一般に利用されてるのは多分CSSというヤツだと思いますが、管理人にはちょっとよくわからないです。ごめんなさい。
と、管理人自身もよく判ってない蘊蓄を言ったところで、本編へと参りましょう。


基本的に、これらの物は「OSやブラウザが変わっても機能・デザイン等の変化がなく(または少なく)表示させるもの」として開発されました。
そして、開発が進み、どんどんと高度な物になっていくのは世の習い。どちらも古いブラウザでは表示しきれない物も多いのでございます。
……けどね。ちょっとグチっぽくなるけど、聞いてもらえます?

Macだと対応してない物って結構多いのよ。


ちょっと凝ったサイトへ行って「スクリプトのエラーです」という警告メッセージが出たり、
行ったはいいが、ブラウザに何も表示されてなかったり(でもブラウザは「画面表示終了」と言ってる)、
最悪のケースは何の必然もなくブラウザが突然強制終了……。
こんな事がバンバン起きてくれちゃうと、ちょ〜〜っと疑っちゃう訳よ。

「変化がなく(または少なく)表示させる」ってのをね。


そこで、こんな事をしてみました。

IEはこれNNはこれ


こればっかりは文章じゃ判ってもらえないので、画像を極力使わないぽりしぃに反して画像を使いました。
左が「Internet Explorer 5.0 Macintosh Edition」。右が「Netscape Communicator 4.7 (Macintosh)」。
ブラウザ初期設定はどちらも「文字12ポイント」「書体:リュウミンL-KL」「画面全表示」です。
画像を高圧縮&加工技術不足なのでかなり見にくいとは思いますが、おおまかなデザインが見えればいいので。
どちらも表示させる為のタグは全く同じ物を使いました。


どうです? 管理人の言った事が少しは判ってもらえるかと思います。
これは、いくら何でも「少ない」変化という域ではないと思うんです。はい。
でも、これは文章だけだからそんなに致命的ではないんです。それにNetscape Communicator 4.7は、スタイルシート対応が不十分なのが理由です。
Netscape 6.0以降はちゃんと大差なく出ますが、未対応タグ・スタイルシートが数多い事に変わりはありません。
それにしても、どうしてこんな風になってしまったのか。そんな事は判らないが、管理人はこう予想する。

予想その1 WIN&IEの隆盛。
今の日本(多分世界も)OSはWINDOWS。ブラウザはInternet Explorerという方が圧倒的大多数だと思う。
圧倒的大多数という事は、それだけ利用者が多いという事である。利用者が多ければ、その需要を見込んで様々な開発を公的・私的にやる人も増える。
そして、それに比べて需要の少ない物の開発・発展が遅れがちになる。
実際問題として、MacよりWINが。NetscapeよりInternet Explorerの方が対応しているJavaScriptやスタイルシートは多いのだ。もちろんタグだってそうである。

予想その2 Internet ExplorerとNetscape Communicatorのやり方。
「2大ブラウザ」と呼ばれるだけあり、圧倒的大多数をIEが占めているとはいえ、NCとて立派なブラウザソフト。こっちを愛用しているユーザーもまた多いのだ。
聞いた話によると、ページの表示の「やり方」が、この二つのソフトは微妙に違うらしい。
ま、管理人も仕組みまではわからないのですが「違う経過を辿って同じ結果を出す」と解釈している。その違う経過を辿った結果が、微妙な「違い」となって現れるのではないか、と。
例え話をしよう。

「700円の物を買うのに、1000円を支払ったら、300円のおつりがきました」

さて。あなたはどうやって計算しましたか?
たいがいの人は「1000−700=300」と計算したと思う。が、それだけしか計算法がない訳ではない。
こういう考えもできる。
「700+(100+100+100)=1000。→300」
……言いたい事はだいたい判ります。ですが、事実です。間違ってはいません。
実は、引き算でやるのは日本のやり方。足し算でやったのがアメリカ(他)の国のやり方なのだ。これ本当。
どちらもきちんと「おつりは300円」という結果が出ている。でも、そのやり方は全く違う。
おつりを「ページ」。計算法を「レンダリングエンジン(タグ等をきちんと表示させるためのプログラム……だったかな??)」と例えれば良いのかもしれない。
ソフトによってこのレンダリングエンジンが違う為にこういう事が起こってしまうのではないか、と思うのである。全く同じだったら物真似になっちゃうもんね。それに、問題も起きないし。


でもさ。OSが違っても、同じ名前のソフトだったら同じ事ができるのが普通なんだろうけど、ブラウザに限ってはそうではないようだ。
おまけにMac版の物は独自性が強いらしい。そんなの強くなくていいから、WINDOWSのと同等の事ができるようになってほしいな、ホント。そうでなくて何が同じバージョンだ。
と、現在の事情を話したところで、ようやく本題に入れる。というか、本題はいたってシンプル。

どっちかしか対応してないタグ・スタイルシート・JavaScriptは使わないようにする。

これは、タグ事典にはきちんと書いてある筈です。書いてない物は買う価値ナシ、と独断で決めます。ま、限界はありますから、どこまでできるかは判りませんけど。
それに、見る側に自分と同じ設備を「推奨」するのはともかく「おしつける」のはいただけないでしょ?
確かに「こういう環境で作ってます」と表示するのはいいと思う。だけど「Netscapeだとデザイン崩れまくりますからInternet Explorer 6を推奨」というならまだしも「WINDOWSのInternet Explorer 6にしてください。それ以外では動作の保証がありませんので」という表示を見た時は「あんた何様のつもりだテメーが(以下過激な罵詈雑言の為削除)」と言いたくなります。けど、実際あります、こういうサイト。結局は言い方の問題なんですけどね。
せいぜいブラウザと解像度くらいしかお揃いにはできないんですから、なるべく止めましょう。


あ。言い忘れてましたが、両方に対応はしていても、見え方が違うってのも数多いですから、気をつけて下さいね。
そういう時はどうしろって? 違うブラウザ・OSを持っている人とお友達になってチェックしてもらえばいいじゃないですか……って、これもかなり独善的ですけどね。
他人の目から見れば、自分で気がつかなかった部分も見えてくると思うし、そうした交流も「アリ」かな、と思いますし。
ちなみにこちらはやってもいいですよ。やってほしい方はご連絡を。


え? どこが「軽くするアイデア」かって?
いや。突っ込まれたんですよ。「軽くするのがモットーの割に、タグの無駄が多いですよ」って。
ああじゃないとね。Internet Explorerで良くても、Netscape Communicatorだとムチャクチャになるっての多いんですよ。少なくともMac版の物は。
Internet Explorerは対応しているタグ、そして「閉じなくても」何とかなるタグや省略可能なタグがあります。
しかし、Netscapeは対応しているのが少ない上に省略可能なタグも少ないです。
ですから、両方で確認をしている訳です。もっとも、同じに見える事などそうそうありませんが。
ちゃんとそういう所も考えてるんですよ。一応。


文頭へ メニューへ
inserted by FC2 system