新しいHTML5/CSS3(Web8!)のものはかっこいいですね!今すぐ使用を開始するか、css/xhtmlを使い続ける必要がありますか?
HTML5は、IE5を含むすべてのブラウザーでサポートされるようになりました(html5shivスクリプトを使用する場合)。読むことを強くお勧めします http://diveintohtml5.org これは、最高のHTML5リソースの1つです。
CSS3については、使用する場合は、通常の構文に加えて、ベンダーのpredixも必ず使用してください。例えば.
境界半径
-moz-border-radius
-webkit-border-radius
私は進歩的な強化を信じています。 IE9のcss3サポートは非常に有望です。
おそらく。
HTML5には、今すぐ使用できる部分があります。たとえばフォーム。 HTML5をサポートしていないブラウザー(はい、IE6でも)に<input type="email">
がある場合、<input type="text">
を使用した場合と同じものが表示されます。しかし、HTML5フォーム要素をサポートするブラウザーでは、email
タイプの利点が得られます。つまり、クライアントは余分なJSを必要とせずに値をエラーチェックします。はい、HTML5以外のブラウザにはJSが必要ですが、サポートするブラウザにはもう1つの検証レイヤーがあります。
別の このサイトに関する質問 は、HTML5およびCSS3で利用可能な新機能の概要を提供します。その質問には、フォームに関する多くの優れたデータもあります。
Internet Explorer(およびSafariとFirefoxの古いバージョン、まれではあるが)はこれらの機能の多くをサポートしていないため、空白を埋めるためにJavaScriptライブラリが残っています。これらには、パフォーマンスヒットが含まれます(使用する必要があるのはブラウザのみですが)ため、使用する際はユーザーに注意してください。
機能サポートの欠如に関する問題を軽減するには、これらの新機能が価値があると判断した場合、次のリソースを使用します。
.htc
ファイル)により、Internet Explorer 6-8は、最も多くの便利なCSS3装飾機能。要素に適用すると、IEがborder-radius
、box-shadow
、border-image
、複数の背景画像、およびlinear-gradient
を認識して背景画像として表示できます。 。true
、サポートされていない場合はfalse
を含むセルフタイトルのグローバルJavaScriptオブジェクトを作成します。 HTML5要素のスタイルと印刷のサポートを追加して、<section>
、<header>
、<nav>
などの要素を使用できるようにします。<img />
要素のsrc
またはCSSのbackground-image
プロパティとして使用できます。 AlphaImageLoader
とは異なり、background-position
およびbackground-repeat
は意図したとおりに機能し、要素はa:hover
疑似クラスに応答します。.htc
ファイル) IEへの不透明度6.完全なCSSバックグラウンドポジショニングとリピートが(CSSスプライトを含む)追加(含まれる)JavaScriptでサポートされています。.htc
ファイル) 、IE7およびIE8の癖があり、他のブラウザと同じように使用できます。 AJAXのサポートが含まれます。つまり、javascriptを介してドキュメントに挿入されるHTMLは、IEで:hover
、:active
、および:focus
スタイルもトリガーします。興味深いことに、DD_belatedPNGはWhatever:hoverとTwinHelixのIE PNG Fixが純粋なJavaScriptで解決した両方の問題を解決し、Whatever:hoverとTwinHelixのIE PNG FixはJavaScriptと_の組み合わせを使用します。IE添付の動作(.htc files
)。
一般に、IE以外のブラウザを使用する人は、求められたときにアップグレードするため、IEは「しかし、一部のブラウザはこの機能をサポートしていない!」苦情。 Modernizrは、IEだけでなく、表示される可能性のある任意のブラウザーにHTML5/CSS3を使用する機能を追加します。 ie-css3.jsは同じことを行います。IE条件付きコメントなしで実装する必要があります(つまり、allブラウザーは最終的にそれを取得することになります)サーバー側のユーザーエージェントチェックに含めない限り、IEユーザーだけでなく、すべての訪問者のパフォーマンスが大幅に低下します。)
ニーズに最も適したテクノロジーを使用してください。
Eric Meyerは、CSSルールでベンダー固有のプレフィックスを使用し始めるのが以前のCSSフィルターハックを使用するのと同じではない理由について A nice article を書きました。
同じことがHTML5にも当てはまると思います。さまざまな機能のブラウザサポートを確認できる場合は、使用しないでください。サイトが正常に劣化する限り、それを維持します。
使用するCSS3機能を決定する際に役立つその他のリンク: http://caniuse.com/ (どのプラットフォームでどの要素とセレクターが使用可能かを十分に説明します)
http://css3please.com/ (CSS3機能を混乱させるページ内編集可能なプレイグラウンド。これは、一般的に要求されるスタイリングのプラットフォームによってサポートされるテクニックと機能に関するアドバイスも提供します。丸い角、グラデーションの背景など)
私はこれを使用して、最新のブラウザーでのエクスペリエンスを強化し、優れたブラウザーを持つユーザーが見栄えの良いUI(丸い角、影、そのようなもの)で「報酬」を得られるようにします。何らかのJSフォールバックを取得しない限り、現在のクライアント側のフォーム検証の代わりに使用しないでください。
古いブラウザでもサポートされるHTML5を使用して新しいプロジェクトを開始する場合、最良のオプションはInitializrを使用することです-
バックエンドでHTML5 Boilerplateを使用し、独自のいくつかのオプションを追加して、独自のサイトにデプロイできるテンプレートを提供します。 Javascriptライブラリ(HTML ShivやModernizrなど)が含まれているため、サイトが古いブラウザーと互換性があります。
視聴者が何であり、どの機能を使用するかによって異なります。平均的なプロジェクトがie6のサポートを終了できるようになるまでに、さらに数年かかると予想しています:(
サイトがプライベートイントラネットであり、ブラウザーを制御するか、処理するブラウザーの範囲が限られている場合は、最先端のテクノロジーに気軽に取り組んでください。
そうでない場合は、何を使用しても、常に最小公分母を考慮する必要があります。この場合、おそらくIE 6とモバイルブラウザの範囲の組み合わせです。したがって、HTML 5を使用すると、サイトが適切に「劣化」することを確認するという追加の問題が発生します。