何がクロスブラウザのWebサイトのベストプラクティスですか?
(私はwikiのようにしたいコミュニティ決定的なこれにしています。私は答えを私シードそれから自分のこの質問。) 指定すべてこれにクロスブラウザの問題の多くは、金額:あなたは、何かを指定していない別のブラウザは、異なる仮定を確認します。したがって: 宣言有効doctypeをあなたのdoctypeがあなたがあなたのコード内で使用しているよ支配ブラウザに指示します。あなたが指定しない場合、ブラウザは推測すると、ある別のブラウザとは異なる推測します。 私の経験では、"厳格な"doctypeがIEの良い(可能CSSのようなもの:ホバーセレクタIE7で複数のdiv)に動作させます。 この資料では、文書型背景に良いことができます。 使用してWeb標準避けてブラウザ固有のマークアップ、または場合にのみ、他のブラウザでの失敗は、サイトの経験に重要なことは、それを使用します。 を検証するHTMLとCSSあなたはすべてが完璧を取得する必要はありませんが、検証は良いフィードバックされます。としてジェフは言った : ルールを知っているとの境界では、何をやっている定義に役立ち、あなたの同意または反対のための合法的な弾薬を与える。あなたの代わりにインフォームドチョイスをすることができるランダムな"私はこれを行うには"1つの動作します。 想像すると段落タグを開いて、それを閉じられない。あなたがして、リストタグを開く場合しなかった場合は、段落かどうかの内部であることを意味?検証は、あなたが、タグを閉じて、あいまいさを排除するキャッチに役立ちます。 CSSのリセットを考えてみましょう異なるブラウザは異なる基準のCSSルールを前提とします。あなたが明示的にフロントまでの違いをアイロンで同じように動作するようにそれらをすべて助けることができる。エリックメイヤーは、書き込みのCSS を:Definitive Guideの、使用してこのリセットします。もう一つの人気は、 唯リセットCSSの 。 IEでのテストは、複数のブラウザでは、取引の最後テストは、複数のブラウザでは行っている。一般的に、あなたは、IE以外のブラウザでは同様に動作し、IEが特殊なケースです見つける - 特に場合は、アドバイスを上記に従います。必要に応じて、別のスタイルシートでIEのハックを追加することができる唯一のIEユーザーのために読み込みます。 Quirksmode.comは相違をランダムにブラウザの狩猟のための場所が良い。 Browsershots.orgはシステム運用とお手伝いを示すブラウザの品揃えがページがあなたの方法を表示します。 失敗優雅にいいえサイトは完璧な存在するすべてのブラウザで見ていきます。ユーザーがFlashを、またはJavascript、または高度なCSSなど持っていない場合は、使用可能なとにかくするサイトを選択します。デザインを念頭に置い: 裸のHTMLをチェック裸のHTMLでサイトを読み込みしてください - なしのスタイルを、何のスクリプトを。メニューオプションはありますか?主要なコンテンツ二次コンテンツの前にありますか?このサイトは使えるかも醜いか? テスト駆動漸進的に強化を検討の記述は、この資料 、使用してJavaScriptのテクニックこのチェックする場合は、ブラウザページを使用しそれを前に、プロパティのCSSをサポートするため与えているような、能力を与えられた。それは機能の特定のブラウザではなく、テストのためには、ブラウザスニッフィングとは違って。 |
6 Replies
1)
DOMやAJAXとJavaScriptでjQueryを離れて抽象的な違いのようなライブラリを使用します。 |
2)
モバイルデバイスを考えてみましょう。 |
3)
のFirefoxで使用Firebugの:
ChromeとIE8は、同様のツールを内蔵しているのと同じものを使用することができます。 オペラとは、Safari(とIE)がFirebugのLiteを 。 |
4)
あなたのプログラミングを検討WebサイトのUIを使用してGoogle Web Toolkitを 。 GWTのを使用するとしてクロスJavaScriptを自動的にすべての主要なブラウザ間で動作する最適化にコンパイルGWTのJavaプログラミング言語のすべてのコードを記述します。 |
5)
あなたは、HTML、CSSとJavaScriptを別のファイルで可能な限り維持していることを確認します。構造体を混合、プレゼンテーション、HTMLファイルの動作だけで見つけることになり、難しい問題を修正する。 |
6)
私の#1のルールはdoctypeを厳密に使用。 HTMLやXHTMLは正常ですが、厳密なdoctypeを使用して、ほとんどすべてのブラウザ気まぐれそこは、IE7 +特にです削除されます。
実際には内部の他のブロックタグを置くことができない それは)ルールを、上記の場合は覚えておく必要はありません(良くはない脱脂するために簡単にコードを言うあなたがいる一般的にはためではなく、 閉じタグをしてください。 |