HTML5shiv対Dean Edwards IE7-js対Modernizr-どちらを選択しますか?


113

私は最初のHTML5サイトの構築を検討しており、IEとの連携を検討しています。

html5shiv、Dean Edwards ie7-js、Modernizrがあります。これらはすべて同じですか?どのルートに行くか迷っています。


1
+10は、よくできた素晴らしい質問です。
Snekse 2013

回答:


124

いいえ、まったく同じではありません。彼らは全く違うことをします。

  • html5shivを使用すると、新しいHTML5タグを理解できないバージョンのIEで使用できます。それがなければ、IEはこれらのタグを詰まらせるので、タグを使用する場合はこれが必要です。ただし、IEでタグが実際に何かを行うとは思わないでください!ブラウザがそれらについて不平を言うのを止めるだけです。

  • modernizrは、使用可能な機能に応じて、HTMLに一連のクラスを設定します。これは、ブラウザーがサポートするものに従ってレイアウトを変更するために使用できます。また、html5shivのように、IE新しいHTML5タグを使用することもできます

  • ie7.jsie8.jsおよびと同様ie9.js)は、JavaScriptを使用して、不足している機能の一部をIEにレトロフィットします。

私が知る限り、それらの間に(html5shiv / modernizrを除いて)クロスオーバーがないため、実装する必要のある機能に応じて、それらの任意の組み合わせを使用できます。

私はこの問題に取り組んでいますが、IEを他のブラウザーとより互換性のあるものにするためのツールについて質問しているのでCSS3Pieも確認することをお勧めします。 (プラス1つまたは2つの他の機能)。

これはまた、あなたが言及した他の3つの製品とのクロスオーバーはありませんが、すべて古いバージョンのIEを扱いやすくすることを目的としています。


それが私が探していた答えです。ありがとう:)
PaulM

64
Modernizrには、基本的にhtml5shiv全体が含まれています。
ポールアイリッシュ

素晴らしい概要。確かに私にもいくつかの方向性を与えました。ありがとう!
ebrandell 2012年

2
@RoyiNamir-ModernizrはHTMLでクラスを設定します。それ自体はこれらのクラスでは何も行いませんが、他のJSライブラリまたはCSSを使用してこれらのクラスを参照し、HTMLコード内の他のクラスと同じように、好きなことを行うことができます。例:placeholder入力タグでaを使用するとします。しかし、古いIEはそれをサポートしていません。Modernizrはno-placeholderIEにクラスを追加します。このクラスを参照するJavaScriptコードを記述して、プレースホルダー機能を必要としないブラウザーで実行することなく、プレースホルダー機能を模倣するスクリプトを実装できます。それが説明されることを願っています
Spudley 2013年

1
IE9.jshtml5shivが行うこともすべて行います。
Phil

12

新しいHTML5プロジェクトを開始する最も簡単な方法は、initializrを使用することです。HTML5プロジェクトファイルをガイドし、ビルド、ダウンロードできます。


5

それらはいくぶん同じです、そしてどちらに行くのがどちらの方法でもATMと同じくらい良い推測です、そして記録のために、あなたが見逃したものがあります、 http://html5boilerplate.com/これはプロトタイプのときに数年前の一種の繰り返しですとjQueryは同じ空間で戦っていました。私は個人的にjQueryが勝ったことを危険にさらしますが、現時点では、これらのどれがこの特定の戦いに勝つかはわかりません。他のフレームワークと同じようにHTML5全体を活用するのではなく、IE7を他のよりインテリジェントで好感の持てるブラウザーのように機能させることを主に扱っているため、私はディーンエドワーズie7-jsをお勧めできないと思います。


2
ボイラープレートについて言及していただきありがとうございます。これを質問に含めるつもりでしたが、モデナイザーはボイラープレートに含まれているため、質問の3つの項目に固有のものにする必要がありました。
PaulM

1
あなたはhtml5boilerplateが何であるかについて正しくありません。html5boilerplateは、以前のバージョンのhtml5boilerplateのある時点で、initializrなどのWebプロジェクトを開始するために必要なものを含むパッケージであり、おそらく今でも、modernizrまたはhtml5shivを使用する必要があることを説明します。両方を使用しないでください。modernizrが必要なことを行うため、本番環境用のカスタムmodernizrをダウンロードして、必要なものだけを使用する必要があります。modernizrサプライを使用しない場合は、html5shivを使用してください。
Neo

この質問が2010年に尋ねられて以来、html5boilerplateはかなり劇的に変化しました。それはそれでした、そして、尋ねられた質問で何が望まれていたか、あなたがHTML5プロジェクトを始めるのに必要なすべてをバンドルしました。元々の質問は、「最初のHTML5を作成したい」でした。私はまだ、html5boilerplateが、質問された時点での質問の受け入れ可能な代替オプションであったと信じています。
FatherStorm 2014
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.