web-dev-qa-db-ja.com

html5shivよりもModernizrの利点を理解する

この2つのスクリプトライブラリについては、サイトに良い質問がたくさんあることを知っています。

でも、どこにもないような質問をしたかったんです。

Modernizr は何を提供しますか html5shiv はそのままでは機能しません。つまり、スクリプトを含むだけです。

私はhtml5shivがIE <9のHTML5要素を「ちょうど」修正することを知っています。サポートはそこで停止しますか?

ModernizrはIEナビゲーターのCSS3の問題を修正しますか?ie9.jsはそれを実行しますか?(そして私はコーナーケースを処理する追加のjsコードなしで、箱から出してこの特定の質問を意味します)

スクリプトを含めるだけでなく、ライブラリの使用を考慮した場合、html5shivよりもModernizrの利点は何ですか?

39
bevacqua

彼らは異なることをします。

Modernizrは、ページ内の機能の可用性を検出し、その機能が必要な場合に、古いブラウザーに独自のポリフィルを提供できるようにします。 <canvas>タグをサポートしていないブラウザで、JavaScriptインターフェースを含むキャンバス機能を使用できるように、キャンバスタグポリフィルを使用して<canvas>のサポートを追加できます。

Html5shivは、古いブラウザーに使用できない新しいhtml5タグ(<section><header>など)を追加します。また、デフォルトのスタイル(display: blockの場合は<section>など)も作成します。

それでおしまい。その他の機能はありません。

55
tkone

Modernizr 1.5+には実際にはHTML5Shivが含まれているため、使用すると、sivは冗長になります。出典: http://modernizr.com/docs/#html5inie

「Modernizr 1.5以降、このスクリプトは、人気のあるhtml5shim/html5shivライブラリで使用されているものと同じです。」

40
swrobel