ホームページ >ウェブフロントエンド >H5 チュートリアル >H5 の新しいタグによるブラウザの互換性の問題の詳細な説明
結局のところ、HTML5 仕様はまだ定義されたばかりの仕様であり、特に IE8 以下のブラウザでは、新しいタグや新しい属性をサポートできないブラウザがいくつかあります。以下は、HTML5 の新しいタグを扱うためのブラウザー互換バージョンの紹介です。結局のところ、HTML5 の仕様はまだ定義されたばかりなので、一部のブラウザーではサポートされていません。新しいタグと新しい属性、特に IE8 以下のブラウザです。以下では、ページ内で HTML5 の新しいタグを使用するためのいくつかの実用的な方法を紹介します。その目的は、HTML5 の新しいタグが低レベルのブラウザーで限定的にサポートされ、ページ全体の機能に影響を及ぼさないようにすることです。
HTML5仕様の新しいタグをブラウザに認識させます
var e = "abbr, article, aside, audio, canvas, datalist, details, dialog, eventsource, figure, footer, header, hgroup, mark, menu, meter, nav, output, progress, section, time, video".split(', '); var i= e.length; while (i--){ document.createElement(e[i]) }
ブラウザーが新しいタグをサポートした後も、タグのデフォルトのスタイルを追加する必要があります:
article,aside,figcaption,figure,footer,header,hgroup,nav,section{display:block} mark{background:#FF0;color:#000}
これら 2 つの単純な
JavaScriptコードと CSS コードにより、IE8 以下のブラウザで HTML5 の新しいタグをサポートできるようになります。もちろん、最良の方法は、成熟した フレームワーク を直接使用することです。現在、この考え方に基づいたフレームワークが複数あり、最もよく使用されているのは html5shim フレームワークの リファレンスを追加することです。つまり、
<!--[if lt IE 9]> <script> src="http://html5shim.googlecode.com/svn/trunk/html5.js"</script> <![endif]-->
広義の HTML5 には、HTML5、CSS3、および新しい
Modernizrの使い方はとても簡単です。まず、head部分にフレームワークのJavaScriptファイルを導入します:
<script src="js/modernizr.min.js"></script>次に、
htmlタグ
にno-jsというクラスを追加します:<html class="no-js">If JavaScript isブラウザで無効になっていない場合、ブラウザがページをロードした後、HTML タグのクラスが動的に置き換えられ、追加されます。ロード後の HTML タグは次のようになります。
<html class="js canvas canvastext geolocation rgba hsla no-multiplebgs borderimage borderradius boxshadow opacity no-cssanimations csscolumns no-cssgradients no-cssreflections csstransforms no-csstransforms3d no-csstransitions video audio cufon-active fontface cufon-ready">CSS コードでは、これらのクラスを使用して下位互換性コードを追加できます。 以下は、複数の背景画像を使用する例です。
#nice { background: url(background-one.png) top left repeat-x; } .multiplebgs #nice { background: url(background-one.png) top left repeat-x,url(background-two.png) bottom left repeat-x; }これに興味のある読者。フレームワークでは、Modernizr の公式 Web サイトを参照して、より詳細な例と使用法を確認できます。
ブラウザ |
バージョン |
サポートされている形式 |
Internet Explorer |
9.0+ |
MP 3、AAC |
Chrome |
6.0 + |
Ogg Vorbis、MP3、WAV (9.0+) |
Firefox |
3.6+ |
Ogg Vorbis、WAV |
Safari |
5.0+ | MP3、AAC、WAV |
オペラ |
10.0+ |
Ogg Vorbis、WAV |
大约有80%的浏览器支持HTML5的b97864c2e0ef2353a16c4d64c7734e92标签,但是并没有一种统一的音频格式。从支持的格式来看,要让所有的浏览器可以播放audio元素上的音频,最佳的方式是提供MP3和Ogg两种格式,兼容代码如下:
<audio controls> <source src="elvis.mp3" type='audio/mpeg; codecs="mp3"'> <source src="elvis.oga" type='audio/ogg; codecs="vorbis"'> <!-- 向后兼容代码:如,显示提示信息、提供下载链接使用flash播放器等 --> 浏览器不支持<code>audio</code>标签 </audio>
视频也有和音频类似的状况,如下是浏览器支持视频的格式列表:
浏览器 |
版本 |
支持格式 |
Internet Explorer |
9.0+ |
MP4 |
Chrome |
6.0+ |
MP4、WebM、Ogg |
Firefox |
3.6+ |
WebM、Ogg |
Safari | 5。 0+MP4 | |
10.0+ | WebM、Ogg |
以上がH5 の新しいタグによるブラウザの互換性の問題の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。