6

わかりました。ウェブサイトの読み込み速度を最適化する方法について、何百万もの方法を聞いたことがあります。HTTPリクエストが少ないほど、優れています(これが、画像スプライトが生まれた理由です)。1ページだけが必要なJavaScriptファイルのみを挿入します。可能な限り視覚的な機能強化のためにCSSを使用してから、SVGグラフィックスを検討してください(これはまだ議論の余地がありますが)。CSSおよびJavaScriptファイルとHTMLマークアップを圧縮します。スクリプトを1つのファイルに統合します(HTTPリクエストが再び少なくなります)。アセットをgzipで圧縮します。などなど。

しかし、今日私はこのコメントをウェブサイトで見つけました:

「Web開発のベストプラクティスに関心があるため、プロジェクトで@importルールを使用しなくなりました。」

明確にするために、私の質問は次の違いについてではありません。

<link rel="stylesheet" href="file.css">対。<style type="text/css">@import url("styles.css");</style>

<link rel="stylesheet" href="file.css">これをHTMLドキュメントに追加することと、これを@import url("styles.css")メインのCSSファイル内に追加することの違いについてです。

では、HTMLからCSSファイルをロードすることと、別のCSSファイルからファイルをロードすることの違いは何ですか?

つまり、HTTPリクエストは引き続き存在し、異なる場所から作成されているだけです。

Steve Soudersの@importを使用しない記事とAbout.comの記事を読んだ@importとCSSのリンクの違いは何ですか?、しかし、彼らは私が言及していなかった上記の方法を比較しているので、なぜ使用しないのか私にはわかりませんでした@import

ところで、私はNetscape 4やIE6(神に感謝します)やIE7とFOUCについては気にしません。

前もって感謝します。

4

2 に答える 2

6

違いは、並列ダウンロードにあります。 @import並列ダウンロードをブロックします。これは、ブラウザが次のファイルをダウンロードする前に、インポートされたファイルのインポートを待機することを意味します。

于 2012-10-02T15:45:49.507 に答える
1

あなたが引用した最初の記事(Steve Soudersの「@importを使用しない」)は、@importインポートされたスタイルシートの内部のケースを具体的に扱っています。これは、タグの内部に配置する<link>のと同じくらいパフォーマンスに悪影響を及ぼします。実際、それは少し悪いです。ブラウザは最初にリンクされたスタイルシートをフェッチし、次にそのスタイルシートを解析し、次にルールを検出し、次にインポートされたスタイルシートをフェッチする必要があります。@import<style>@import

于 2012-10-02T15:46:16.230 に答える