0

更新: 結局、これは問題ではなくなりました。js ファイルと同じドメインを介して BLOB からテーマ css ファイルを提供するプロキシを作成しました。

document.stylesheets オブジェクトを使用して特定のスタイルシートの css ルールに関する情報を取得する themeswitcher モジュールを開発しています。

サイトは Azure でホストされ、css ファイルは BLOB に保存されます。

これにより、BLOB でクロスオリジン リソース共有がサポートされていないため、スタイルシートにアクセスできなくなります。

回避策は、css ファイル全体を html ページの head セクションに挿入することです。

これはページを肥大化させてパフォーマンスに大きな影響を与えますか?

編集:

以下のコメントで述べたように、もちろん 2 つの要因があります。1 つ目は、外部 css ファイルのキャッシュであり、再読み込み時間が短縮されます。2 番目は http 要求の数です。css がページにある場合は少なくなりますが、ファイルが既にキャッシュされている場合は、再読み込み時に要求は行われません。

これらの要因とは別に、ヘッダー セクションにそれぞれ 100 ~ 300 の CSS ルールを持つ約 3 ~ 5 個のスタイル タグを追加することで、html ページをはるかに大きくするかどうかを理解しようとしています。 html文字列自体はずっと長いですか?

4

2 に答える 2

2

ページ内にある場合、2 回目の読み込み時に CSSがブラウザーのキャッシュにまだ存在しないため、読み込みに時間がかかります。

于 2012-10-25T14:00:15.140 に答える
1

それはさまざまな要因に依存します。たとえば、css の大きさや、ユーザーがどこからサイトにアクセスしたかなどです。ターゲット ユーザーがモバイル ユーザーの場合、データが 1 KB 増えるごとにパフォーマンスが大幅に低下し、ユーザー エクスペリエンスが低下する可能性があります。一方、各外部スタイルシートは http リクエストであり、パフォーマンスにさらに影響を与える可能性があります。したがって、それはあなたの特定のケースに依存します

于 2012-10-25T14:05:08.510 に答える