2

どちらが速度に最適か疑問に思っています:

オプション 1: ブラウザーごとに個別の CSS をロードする ( を介して含まれる個別の JS ファイル<script/>):

// for internet explorer 6 & 7
if ($.browser.msie) {
    document.write('<link rel="stylesheet" type="text/css" href="/css/styles-ie.css" />');
}

// for opera
if ($.browser.opera) {
    document.write('<link rel="stylesheet" type="text/css" href="/css/styles-opera.css" />');
}

オプション 2: インライン CSS ( を介して含まれる個別の JS ファイル<script/>):

// for internet explorer 6 & 7
if ($.browser.msie) {
    document.write('[some CSS styles]');
}

// for opera
if ($.browser.opera) {
    document.write('[some CSS styles]');
}

オプション 3: または、別のより良い方法はありますか?

4

3 に答える 3

6

私は条件付きコメントが一番好きです。実際にテストしたわけではありませんが、DOM 操作が含まれていないため、これが最速のオプションであると期待しています。この手法で IE の会話をサポートすることについてのすばらしい記事もありますが、いくつかの落とし穴についての記事を読むことも役立つかもしれません。

私の経験では、IE 以外のブラウザーに例外を設ける必要はありませんが、例には Opera もリストされているため、いくつかの CSS ハックを使用して、Opera に必要な (おそらく小さな) 変更を行うことをお勧めします。Opera 固有の CSS を Web 検索すると、気に入ったものがきっと見つかるはずです ;)

于 2009-01-18T10:47:30.723 に答える
0

次のいずれかを使用してIEブラウザを検出できます

  • IE 条件付きコメント
  • CSS ルール固有
  • 条件付き HTML クラス

ここにすべてのルールを示す素晴らしい記事があります

于 2012-08-27T05:34:08.890 に答える
0

CSS リセットを使用して、競技場を少し平準化します。これにより、通常、すべてのブラウザーが、適用するスタイルに対してかなり予測どおりに動作します。もちろん、IE がより標準に準拠したブラウザーとは異なる方法でレンダリングするいくつかの例に出くわしました。条件付きコメントを使用すると、これらの違いを IE 固有のスタイルシートで修正できます。

于 2009-01-19T06:07:55.803 に答える