49

ドキュメントで HTML5 と CSS3 を使い始めたばかりです。これらの新しいタグとスタイルで Internet Explorer を最新の状態にするには JavaScript が必要であることは理解していますが、どれをいつ使用すればよいかわかりません。

私の計画は、html5shiv と IE9.js を使用して、HTML5 タグと透明な png (およびそれらが修正するその他の厄介なエラー) を処理することでしたが、Modernizr と CSS3 Pie が私の注意を引きました。

私の質問は、Modernizr を使用する場合、IE9.js だけでなく html5shiv の必要性も考慮してくれるのでしょうか? それともこれらも含めるべきですか?もしあれば、重複は何ですか?

また、Modernizr やその他のサービスでは行われず、CSS3 Pie で行われることは何ですか? それともその逆?

皆さんの助けに感謝します。あなたが何をしているか教えてください!?

4

3 に答える 3

70

私はこれらすべてについて豊富な経験を持っており、それぞれ数年間使用しています。

モダニズム

HTML5shiv 機能が含まれています さらに多くのことを行います – 他の機能を使用しない場合は、使用しないでください。ページの読み込みが遅くなりますが、必要な場合は価値があります!

HTML5shiv

非常に小さく、IE の html5 要素を修正するだけで、他には何もありません。

CSS3PIE

古いバージョンの IE で、境界線の半径、グラデーション、およびボックス シャドウを使用できます。また、IE 6 で PNG を許可することもできます。ページの読み込みに顕著な遅延が追加されます。

ie7.js (および ie9.js)

多くの CSS3 セレクター、最小幅と最大幅、複数のクラス、および固定位置を提供します。必要に応じて、png を修正することもできます。物事をあまり遅くしていないようです。

結論

私のアドバイスは、次の 2 つのカテゴリに分類されます。

新しい (インターネット上で 2 年前から?!) 要素と CSS3 セレクターのみを使用している場合は、ie9.js + html5shiv を使用します。これは軽量であり、IE6 が何もサポートしていないことを覚えておく必要なく、作業を進めることができます。

多くの CSS3 を使用している場合、CSS3PIE は border-radius と box-shadow を分類します。グラデーションのサポートは少し不安定に見えるので、代わりに常にフォールバック イメージを使用してきました。Modernizr を使用すると、サポートの異なるブラウザーにさまざまなプロパティを簡単に配信できます。私はこれを主に、ブラウザーに CSS トランジションとトランスフォームがあるかどうかを判断するために使用しました。CSS トランジションとトランスフォームは、画像スライダーやコンテンツ カルーセルに役立つからです。カスタマイズ ツールを使用して、必要な機能のみを含めることをお勧めします。Web フォームでは、数ミリ秒間 50 のテキスト ボックスが表示されるため、不要な場合は無効にする価値があります。

お役に立てば幸いです。

于 2011-04-14T19:18:25.927 に答える
6

必要なものだけを使用することをお勧めします。使用している機能をサポートするブラウザーでアプリをビルドし、サポートする他のブラウザーで定期的にテストします。何かが正しく機能しない場合は、html5shiv、IE9.js、Modernizr、または CSS3 Pie のいずれであっても、適切な修正を見つけてください。HTML5 と CSS3 のすべての新機能を 1 つのページですべて使用するわけではないため、存在するすべてのポリフィル ライブラリを含める必要はありません。使用しようとしている機能に問題が見つかるまで待ってから、その機能に必要なライブラリを探してみてください。

于 2011-04-14T17:24:46.590 に答える
2

私は主に CSS3Pie を使用してきました...うまく機能します。しかし、今日の午後、I.E8を使用してラップトップでテストしたところ、問題がありました...いくつかのcss行を無効にしていました...css3pieコードを削除すると、サイトの速度が2倍になりました...その後、私は来ましたcss3のスローダウンについて議論している人々との投稿を横切って...だから、現時点では、IE7とIE8がボーダー半径と色合いを持つ別の方法を見つけるのに忙しい.

使用したい場合は...非公式の修正であるため、多くのことをテストしてください

于 2011-07-21T14:32:29.280 に答える