すべてのブラウザが同じ標準をサポートすることを期待するのはなぜ非現実的ですか?[閉まっている]


12

理想的には、同じ標準と同じコードをサポートする異なるブラウザがあり、すべてのブラウザで同じ結果が得られるようにします。

それはまだ起こっていません。理由は何ですか?


1
「同じコードは、すべてのブラウザで同じ結果を生成します。」-それは標準の目的ではありません。「同じコードがすべてのブラウザーで予測どおりに機能する」というのは近いです。
tdammers

1
私は長年、この質問をしてきた
billy.bob

1
残念ながら、いいえ...私はこれを長い間望んでいました。
Corv1nus

私たちが知っているように、一度だけウェブは死んでいgopherます。
dmckee ---元モデレーター子猫

W3Cはひどく運営されている組織であり、テクノロジーのペースについていくことができないからです。それはほとんどそれです。
ヨルダン

回答:


18

いいえ、仕様は時々混乱し、誰もが他のものとは異なる何かを理解するため、現実的ではありません。結局のところ、私たちはただの人間です。製品の1つのバージョンを持つベンダーが1つだけの場合、真の標準は1つだけです。

ジョエルは、このテーマに関する火星のヘッドセットと呼ばれる素晴らしい記事を書いています。

ここで彼を引用すると思います。これは、さまざまなベンダーが関与している限り、これが表示されない理由の最良の説明だからです。

これらのドキュメントは非常に紛らわしいです。仕様には、「兄弟ブロックボックス(フロートせず、絶対に配置されていない)がランインボックスに続く場合、ランインボックスがブロックボックスの最初のインラインボックスになります。慣らし運転は、既に慣らし運転で始まっているブロックや、それ自体が慣らし運転であるブロックに走ることはできません。」 私はそのようなことを読むたびに、誰がどのように仕様に正しく準拠しているか疑問に思います。

また、市場には競争と進化があります。たとえば、オートコンプリートボックスをご覧ください。すべての主要なブラウザにはすでにそれらがありますが、定義された標準はありません。W3Cは遅すぎます。標準が登場する頃には、すでに5つの異なる実装があり、さまざまな動作がワイルドになっています。競争力を高めたい場合は、サポートする必要があります。この問題のもう1つの主な例は、ビデオの埋め込みです。

つまり、さまざまなブラウザーと環境をサポートする必要がある限り、調整を行う準備をしてください。


11

いいえ。多くの仕様のW3Cは、どこかの実装の責任をUA実装者(ブラウザ実装者)に与えているためです。私が通常W3C仕様から直接記事を書いて、これらのケースを見るからです。たとえば、W3Cは、ブラウザは(Geolocation APIを介して)自分の位置を共有することについてユーザーの同意を得るべきであると述べていますが、それをどのように求めるべきかについては述べていません。これにより、ブラウザごとに異なる種類のメッセージ(ポップアップ、スライドダウンなど)が表示される可能性があります。

一般的に、私たちはそれを言うことができます:

多元的な要件の実装がある限り、ブラウザ間の一貫性を実現するのは困難です。

W3C がブラウザの実装者に何をすべきかを命令的に指示した場合にのみ、一貫したブラウザを見ることができます。


良いもの、Saeed =)+1
Falcon

ありがとう@Falcon。これは私の質問2の一種でした。しかし、その人は多くのダウン票を得て、:Dを削除しました。私たちは皆、IEが最も標準的でないブラウザであることを知っていると思います。
サイードネアマティ

7

あなたが説明する形では起こりません。

しかしながら; 控えめにコーディングすれば、すべての新しいブラウザーで確実かつ予測どおりに動作するコードを書くのにそれほど時間はかかりません。私たちは過去10年間ですでに大きな進歩を遂げてきました。IEでさえ、実際にはブラウザーに依存しないWebサイトを作成するのに十分な、W3C勧告の大きなサブセットを正しく実装しています。

もちろん、推奨事項に含まれていないことを実行したい場合や、曖昧に指定された機能を使用したり、正しく実装されていない(またはまったく実装されていない)場合は、自分で実行します。


1

すぐに起こることは非常にありそうにない-実際、それが起こったとき/起こった場合、それは世界が進んでいるという強い兆候であり、単にウェブブラウザをもう気にしない。

問題は非常に単純です。ブラウザー実行できるさらにクールなもののための新しい標準を作成する際の制限のほとんどは、既存の標準への(妥当な)準拠の欠如です。それをわずかに異なる方向から見ると、ブラウザが既存の標準に適合している(あるいは適合にかなり近づいている)ことは、少なくとも少数の人々が「しかし、そして...彼らは2つのことのいずれかを行います:彼らは1つのブラウザでアイデアを実装してから、アイデアを標準化することに取り組みます(他のブラウザが実装する前にほぼ必然的に)、またはまだブラウザが実装していない場合でも、その動作の標準を作成する作業をします。

結論として、ブラウザー間での標準の実装は、準拠する新しい標準の発明にほぼ必然的に遅れることです。ブラウザがすべて追いつく唯一の方法は、人々がブラウザのために新しいことを書いたりデザインしたりするのをやめることです。

同時に、私は多かれ少なかれその逆も真実であることを指摘する義務があると感じています。これは、ブラウザがこれまで以上に密接に適合する標準のセットです。少し前まで、Acid3テストでブラウザが獲得した最高スコアは93/100でした。たまたま、IEが現在取得しているスコアとまったく同じです...


0

理想的には、同じ標準と同じコードをサポートする異なるブラウザがあり、すべてのブラウザで同じ結果が得られるようにします。

そのため、なぜ異なるブラウザーが必要なのかという疑問が生じます。すべてが基本的に同じことをすれば、1つのブラウザですべてに対応できます。それは確かに理想的です。無駄な労力の重複や、ブラウザ固有のコードはもうありません。人々は最終的に強固な基盤の上に構築を開始できました。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.