7

ブラウザ間で動作するサイトの開発に関する人々の経験についてのフィードバックを探しています。サイト/ウェブアプリをブラウザ間で動作させるタスクにアプローチするには、少なくとも 2 つの明白な方法があるように私には思えます。

  1. あらゆる段階で、サポートされているすべてのブラウザーで常にテストを行います。また
  2. ブラウザーを選択し、そのブラウザーで動作するすべてを参照実装として取得し、他のすべてのブラウザーを参照実装と一致させます。

各アプローチには明らかな欠点があります。#1 の問題は、多くの不要な作業を行うことになることです。特に、多くのイテレーション/プロトタイピング/スパイクなどを経ている Web アプリケーションを開発している場合は.後で破棄/削除されるブラウザー全体で機能する一連のもの。

2 番目のアプローチの欠点は、最初の開発がはるかに迅速かつ困難になる一方で、特により複雑な問題の場合に、特定のエラーがどこで発生したかを突き止めるのがはるかに難しくなることです。ブラウザーをすぐに見つけて、どの変更が問題を引き起こしたかを知る必要があります。

やや明白な 3 番目のオプションはハイブリッド アプローチですが、1 番と 2 番の問題の両方を経験すると、両方を行うことで得られる利益よりも多くを失うことになるように私には思えます。

この課題に取り組むための最も効果的な方法は何ですか?

4

10 に答える 10

9

他のブラウザーを確認せずに Web サイトの開発に深く入り込みすぎると、デバッグが面倒な場所にすぐにたどり着いてしまうことがわかりました。気になるすべてのブラウザーで常に Web ページを開いています。

サイトに大きな変更を加えるたびに、すべてのブラウザを確認することを強くお勧めします。

于 2008-10-23T22:28:59.050 に答える
3

事前にすべてのブラウザで動作するようにします。これは、開発中に追加のテストを行うことを意味しますが、後で負担が軽減されます。後で戻って他の問題のリストと一緒にそれを理解しようとするよりも、開発したばかりの方が問題を診断するのは通常簡単です。

于 2008-10-23T22:29:38.220 に答える
2

ええと、あなたは#1をします、しかしあなたはスタイルガイドを素晴らしい間それをします。このようなちょっとしたこと:http ://www.sitefromscratch.com/content/html-xhtml-css-testing 。

したがって、新しいサイトまたはデザインをデザインするときは、サイトで使用されるすべての視覚要素に必要なHTMLを含むページを作成します。今のところスタイルは無視して、最も意味のあるHTMLを使用してください。

次に、スタイルを設定します。できれば、スタイルガイドはすべて1ページになっているので、サポートしている各ブラウザで開くことができ、変更の合間に更新を押すだけです(検査に時間がかかるため、複数のページを選択することは避けてください)。モール)。

サイトを構築するときは、スタイルガイドから構築してください。スタイルガイドにない場合は、追加して最初にテストします。サイトの構築中に問題を発見した場合(たとえば、ラップしたときに特定の要素を考慮しなかった場合など)、スタイルガイドで問題を複製して修正します。

これがキラーの利点です。サポートされているブラウザの1つの新しいバージョンがリリースされました。テストするのは何ですか、サイト全体、またはスタイルガイドですか。

これでCSSが処理されます。次に、汎用JS関数がある場合は、それをすべて実行する必要があります。

于 2008-10-24T08:26:23.930 に答える
2

それは、事前にすべてのブラウザで動作する必要があることを知っているかどうかに部分的に依存します. もしそうなら、最初からクロスブラウザにしたほうがいいです。あらゆる段階ですべてが 100% 準拠していることをテストする必要はありませんが、それを目指してコーディングする必要があります

特に、jQuery や Dojo などの JS フレームワークがスカットワークを処理してくれるので、それほど難しいことではありません。ブラウザー間の互換性が重要である場合に、本質的により困難な方法で物事を行うことを選択した可能性があるため、あるブラウザーまたは別のブラウザーと絶えず戦っている場合は、設計を再検討することをお勧めします。

于 2008-10-23T22:26:19.320 に答える
1

あなたが最初にそれを正しく行うことができれば。じゃ、するよ。それはおそらく後で決して正しくないでしょう。

于 2008-10-23T23:24:28.343 に答える
1

私は通常、私が作成/使用するすべての HTML とコントロールが仕様に準拠していることを確認することから始めます。

ツール-->オプション-->テキスト エディター-->HTML-->検証-->エラーの表示にチェックを入れ、ターゲットを選択します

これにより、私はしっかりとした基盤を築くことができます。私は 1 つのブラウザーで新機能の機能をテストしてから、1 日に 1 ~ 2 回、すべてのブラウザーでそれらの完全なセットをテストします。

このアプローチを使用すると、CSS と JS は通常、何かが正しくない場合に疑われます。それが実際の HTML マークアップであることはめったにありません。

于 2008-10-23T22:38:33.227 に答える
1

ブラウザーとコードの間にインターフェイス互換レイヤーを作成しました。基本的には、特定の機能をラップし、ラッパーにどの javascript/html が必要かを判断させました。

ブラウザーが変わると、この互換性レイヤーを変更して、残りのコードをそのままにしておくことができます。

アーキテクチャにこのレイヤーがある場合、質問に対する答えは「いつでも」になります。

于 2008-10-23T22:32:46.187 に答える
1

エンタープライズ ロックインを取得できれば、複数のブラウザーのサポートの問題が軽減される可能性があります。たとえば、顧客がすべて Internet Explorer を使用している企業である場合、Safari や Chrome で見栄えのするサイトを構築する必要はありません。

あなたが一般大衆のために何かを作っているとしても、私が使用するハイブリッドアプローチがあります.1つのブラウザを使用してそこにあるすべての機能を取得して動作させ、その「プレティフィング」フェーズにあるときにブラウザ間でテストします.プロジェクトの。最初は機能することが重要であり、次に見栄えがよくなければなりません。

最初にフォームに入力したり、その他の基本的な機能を実行したりするときに、すべてのブラウザーでテストするロジックを確認できたとは思わない. 、Firefox 2 および 3、Opera 9.5、Safari、および Chrome をすべて入手したい場合は、Mac の Safari は Windows の Safari とは異なる可能性があるため、少なくともいくつかの O/S を使用します。これは多くのテストです。たった1ページか2ページでも。一方、最終段階では、CSS とインライン スタイルをリファクタリングし、コードをより適切なものにして、他の誰かが維持できるようにしたり、サービス パック プロジェクトが計画されるまでアーカイブしたり、万が一に備えていくつかのドキュメントを保持したりできるようにします。何かをしなければなりません。また、片付けを待つことで、

于 2008-10-23T22:34:07.870 に答える
0

あなたが Web デザイン/開発に不慣れな場合、さまざまなブラウザーで物事を正しく行うのは面倒な場合があります。

ただし、Web サイトをすべての主要なブラウザーで動作させ、W3C 標準に合わせてコーディングすることは、それほど難しいことではありません。私の意見では、すべてのデザイナー/開発者は、原則に反してこれを行うべきです。

クロスブラウザー コードを開発し、それが検証されることを確認し、1 つのブラウザー用に設計することを二度と考えないようにします。

于 2008-10-23T23:52:40.393 に答える
0

これは、これを含むあらゆるプログラミング活動に適用できる経験に大きく依存します。回避しなければならない可能性のある落とし穴が事前にわかっている場合 (たとえば、クロスブラウザー開発では、別のブラウザーで面倒になるようなことをしようとして自分を苦しめないでください)。の場合、1 つのブラウザーですべてを安全に開発し、それが完了したら、どこでも機能するように微調整することができます。

私は通常、開発中はすべてのブラウザーを開いたままにし、変更を加えたときに各ブラウザーを更新するようにジュニア開発者にアドバイスしますが、私自身は、サポートのために Firebug ですべてを作成し、後で戻って IE7 (など) での動作を確認する傾向があります。私はこれを数年間行ってきたので、ほとんどの場合、何が頭痛の原因になるかを予測でき、多くの場合、どこを修正すればよいかすぐにわかります。

于 2008-10-23T22:38:23.070 に答える