PCで使用するWebアプリを構築しています。IE8以上のようなブラウザーとの互換性の問題を防ぐために離れるべきHTML5タグは何ですか?
注:ほとんどの質問は、この問題に関して1〜3歳です。
PCで使用するWebアプリを構築しています。IE8以上のようなブラウザーとの互換性の問題を防ぐために離れるべきHTML5タグは何ですか?
注:ほとんどの質問は、この問題に関して1〜3歳です。
回答:
どのHTML5タグに近づかないようにするかを尋ねました。
さて、私の知識によるHTML5のタグの一部は、意味上の理由で作成されました。たとえば次のように。
<article> <section> <aside> <nav> <header> <footer> ..ect
これらはほとんど問題なく動作し、ほんの少しのCSSが必要です。display: block;
ほとんどのブラウザで正常に動作しますが、古いブラウザでも動作します。Internet Explorerでは、互換性を保つためにJavaScriptで要素を作成する必要があります。
例を示します。
document.createElement('article');
<article>
古いInternet Explorerで使用できるように要素を設定します。
JavaScript機能が動作する必要があるより高度なHTML5タグの場合、次のようなものがあります。
<audio> <video> <source> <track> <embed> And most importantly <canvas>
これらの要素は、古いブラウザではサポート/シブするのが困難です。下部にはクロスブラウザポリフィルへのリンクを含めましたが、個人的には調べていません。
したがって、JavaScript機能を必要としない要素は、わずかなクロスブラウザーサポートコードで使用するのにまったく問題がないと言えます。
ターゲットが> IE8の場合、shivを使用すれば問題ありません。
古いブラウザを何と呼びますか?<IE9
HTML5タグのブラウザーサポートは現在です。
<section>, <article>, <aside>, <header>, <footer>,
<nav>, <figure>, <figcaption>, <time>, <mark>
Internet Explorer 8未満ではサポートされていませんが、このように修正できます。
CSS:
section, article, aside, header, footer, nav, figure, figcaption{
display: block;
}
time, mark {
display: inline-block;
}
JavaScript:
var elements = ['section', 'article', 'aside', 'header', 'footer', 'nav', 'figure', 'figcaption', 'time', 'mark'];
for( var i = 0; i < elements.length; i++ ) {
document.createElement(elements[i]);
}
そして、<audio> <video> <canvas>
でサポートされていない<IE 9
<embed>
要素がで部分的なサポートがあるIE8を>
このタグも確認する必要があります。
<meta http-equiv="X-UA-Compatible" content="IE=edge">
このmeta
タグは、Internet Explorerに、互換性モードに入り、IE7または8が行うようにページをレンダリングする代わりに、利用可能な最も高いIEモードでページを表示するように指示します。詳細はこちら。
キックスタートについては、HTML5 BoilerPlateをチェックしてください。
ブラウザ互換性サポートテーブルについては、http://caniuse.com/をご覧ください。
HTML5 Shiv- https://github.com/afarkas/html5shiv
HTML5ポリフィルのリスト-https ://github.com/Modernizr/Modernizr/wiki / ...
更新
コメントで述べたように
メタタグX-UA-Compatibleに注意してください。要素を囲む条件付きコメントがあるhtml5ボイラープレートのようなもの(これはhtml5 doctype IIRCでも発生します)を使用すると、タグがあってもIE9がIE7標準モードに強制されるという問題が発生する可能性があります。IEが再びスト
これを調べたいと思うかもしれませんが、現時点ではこれをバックアップするものはありません。
<html>
要素を囲む条件付きコメントがあるhtml5ボイラープレートのようなもの(これはhtml5 doctype IIRCでも発生します)を使用すると、タグがあってもIE9がIE7標準モードに強制されるという問題が発生する可能性があります。IEが再びストします。
一般的に、問題があります。
あなたの質問はHTML 5 タグについて質問するように書かれていると言われましたが、あなたが見つけたり書いたりするかもしれないJavascriptに照らして新機能を見るのも有用です。
実際には、推奨される方法は、特定のブラウザではなく機能の存在をテストすることです。Modernizrスクリプトは、この点で役立つかもしれないが、との報告もあるHTML5で検出できない機能が。
local storage
IE8に戻るようないくつかの機能。
その他、FileReader
IE10 / Firefox21 / Chrome27が必要
最新情報については、http://caniuse.comをお試しください
どのブラウザーでどのタグを使用できるか、および各タグのサポートのレベルを簡単に比較するには、html5test.comが優れたリソースです。
HTML5互換性マトリックスを探しています
http://en.wikipedia.org/wiki/Comparison_of_layout_engines_(HTML5)
html5 compatability
は多くのリソースがあると確信しています。
また、ブラウザ間の互換性を最大限に高めるために、Eric Meyerが作成したこのreset.cssを使用することをお勧めします。 http://meyerweb.com/eric/tools/css/reset/ これにより、ブラウザごとに異なる要素が作成され、すべてのブラウザで同じように動作します。