インラインCSSは簡単ですが、その欠點があります。特にスタイルが複數(shù)のページで複雑であるか、再利用されている場合、HTMLを亂雑にして維持するのが難しくなります。ただし、1回限りのページまたはクイックフィックスの場合、便利なツールです。<\/p>
よりスケーラブルなアプローチは、外部CSSファイルを使用しますが、條件付きでロードすることです。この方法は、必要な場所にのみ含めることができる間、CSSを分離して保守可能に保ちます。 JavaScriptでそれを行う方法は次のとおりです。<\/p>
<!doctype html>\n\n\n <メタcharset = \"utf-8\">\n \nホームページ<\/title>\n<\/head>\n 国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂
\n <スクリプト>\n if(window.location.pathname === '\/homepage'){\n var link = document.createelement( 'link');\n link.rel = 'styleSheet';\n link.href = 'homepage.css';\n document.head.appendChild(link);\n }\n <\/script>\n <! - ホームページのコンテンツの殘り - >\n<\/body>\n<\/html><\/pre>この方法では柔軟性が得られますが、JavaScriptが必要です。これは、NO-JSソリューションを目指している場合は理想的ではない場合があります。また、CSSに動的にロードすることのパフォーマンスへの影響については注意してください。これは、非スタイルのコンテンツ(FOUC)のフラッシュを引き起こす可能性があるためです。<\/p>
3。サーバー側(cè)の包含<\/h4>
PHPやASP.NETなどのサーバー側(cè)の言語を使用している場合は、サーバーにCSSファイルを條件付きで含めることができます。これがPHPの例です。<\/p>
<!doctype html>\n\n\n <メタcharset = \"utf-8\">\n \n<?php echo $ pageTitle; ?> <\/title>\n <?php\n if($ currentPage === '連絡(luò)先'){\n echo '';\n } elseif($ currentPage === 'Homepage'){\n echo '';\n }\n ?>\n<\/head>\n \n <! - ページコンテンツはこちら - >\n<\/body>\n<\/html><\/pre>サーバー側(cè)のインクルージョンは、ページがクライアントに送信される前に行われ、FOUCの問題を回避するため、強力です。ただし、サーバー側(cè)のロジックが必要であり、靜的サイトに適していない場合があります。<\/p>
個人的な経験とヒント<\/h3>
私の経験から、ハイブリッドアプローチがしばしば最適に機能します。たとえば、すべてのページで共通スタイルにベースCSSファイルを使用し、ページ固有のスタイルに追加のCSSファイルを條件付きで読み込みます。これにより、全體的なCSSサイズをダウンさせ、管理が容易になります。<\/p>
注意すべき落とし穴の1つは、CSSの過度のセグメンテーションです。 CSSモジュールを維持するのは素晴らしいことですが、小さなファイルが多すぎるとHTTP要求の増加につながる可能性があり、パフォーマンスに悪影響を與える可能性があります。適切な経験則は、數(shù)十の小さなファイルを持っているのではなく、関連するスタイルをいくつかの大きなファイルにグループ化することです。<\/p>
もう1つのヒントは、SASS以下のようなCSSプリプロセッサを使用することです。より多くのモジュラーCSSを作成することができ、
@import<\/code>やMixinsなどの機能を介して條件付きの包含を支援できます。これがSASSの簡単な例です。<\/p>
\/\/ base.scss\n體 {\n フォントファミリー:arial、sans-serif;\n}\n\n\/\/ homepage.scss\n@import 'base';\n\n.homepage-hero {\n 背景畫像:url( 'hero.jpg');\n 高さ:500px;\n}\n\n\/\/ htmlで\n\n<?php if($ currentPage === 'Homepage'){?>\n \n<?php}?><\/pre>このアプローチを使用すると、必要な場合にのみページ固有のスタイルを追加しながら、ベーススタイルを一貫性に保つことができます。<\/p>
パフォーマンスに関する考慮事項<\/h3>
CSSを選択的に含めるときは、常にパフォーマンスを念頭に置いてください。 Google PagesSpeed InsightsやWebPageTestなどのツールは、CSSロード戦略の影響を理解するのに役立ちます。たとえば、條件付き負荷を使用している場合は、CSSができるだけ早くロードされていることを確認して、Foucを最小限に抑えてください。<\/p>
また、倍以上のコンテンツにCSSクリティカルパスインラインを使用することを検討してください。この手法では、最初のビューポートに必要なCSSをインランス化し、殘りのCSSを非同期にロードすることが含まれます。これがあなたがそれをする方法です:<\/p>
<!doctype html>\n\n\n <メタcharset = \"utf-8\">\n \nホームページ<\/title>\n