目次
Webパフォーマンスの向上:キーCSSSを挿入するための戦略とヒント
ホームページ ウェブフロントエンド CSSチュートリアル 重要なCSSをインラインにする方法と理由

重要なCSSをインラインにする方法と理由

Feb 20, 2025 am 11:52 AM

Webパフォーマンスの向上:キーCSSSを挿入するための戦略とヒント

この記事では、ウェブサイトのパフォーマンスを最適化するために、キーCSS(CSSルールをHTMLドキュメントに直接埋め込む)をインライン化する方法を調査します。重要なCSSをインランス化することにより、特にファーストスクリーンコンテンツのロードを大幅に加速させることができ、外部CSSファイルを取得するための追加のHTTP要求によって引き起こされるレンダリングの遅延を回避します。

How and Why You Should Inline Your Critical CSS

キーポイント:

  • キーCSSを正確に識別します。重要なCSSは、最初の画面でコンテンツをレンダリングするために必要な最小CSSコードを指します。これはページごとに異なり、Google PageSpeed Insights、Critical Path CSSジェネレーター、Penthouse.jsなどのツールで認識と抽出が必要です。
  • トライアルオフ:インラインクリティカルCSSは読み込み速度を改善するだけでなく、HTMLドキュメントサイズを増加させ、コード冗長性を引き起こす可能性があります(特に同じCSSルールが複数のページで再利用される場合)。したがって、インラインされたCSSが実際にWebページにとって重要であることを確認することが重要です。
  • オートメーションツール:
  • グラント、NPMモジュール(クリティカルなど)、Gulp、WordPressプラグインなどのツール(fold最適化、W3合計キャッシュなど)は自動的に識別できます。 、抽出およびインラインキー、操作プロセスを簡素化します。

How and Why You Should Inline Your Critical CSS インターネットの初期には、Webサイトが主にテキスト情報を表示しました。ネットワーク速度が向上すると、ユーザーは高解像度の写真やビデオをすばやくダウンロードでき、さまざまなCSSやJavaScriptフレームワーク、プラグインなどを使用して、Webサイト機能がますます複雑になりつつあります。必要なすべてのファイルをロードするには時間がかかり、より速いWebサイトはユーザーエクスペリエンスの向上につながります。これは、Webサイトの成功に不可欠です。重要なCSSをインランス化し、非クリティカルなCSSを非同期に搭載することは、パフォーマンスを改善するための重要な戦略です。

重要なCSSは何ですか?

キーCSSとは、ホームページ上のコンテンツのスタイルをスタイリングするために使用されるCSSコードを指します(ナビゲーションやその他の要素を含むユーザーの最初の部分)。最初の画面でコンテンツをすばやくレンダリングすることが重要です。

ユーザーはさまざまなデバイスとWindowsを使用してWebサイトにアクセスすることに注意する必要があります。そのため、ホーム画面上のコンテンツを考慮するだけではすべての問題を解決するのに十分ではありません。基本的なレイアウトとタイポグラフィに関連するCSSも重要なCSSと見なされるべきです。

現代のWeb開発慣行は、インラインCSSを推奨します。

なぜインラインする必要があるのですか?
<!DOCTYPE html>
<html>
<head>
  <title>优化后的网页</title>
  <style type="text/css">
    /* 你的最小化关键 CSS 代码 */
  </style>
</head>
<body>
  <!-- 你的标记 -->
</body>
</html>
ログイン後にコピー

Google PagesSpeed Insightsなどのツールは、CSS負荷の最適化を促す可能性があり、インラインの重要なCSSと非同期ロードブロックレンダリングレンダリングスタイルシートを示唆しています。

ブラウザは、すべてのCSSファイルがロードされた後、ホームページのコンテンツのみをレンダリングします。多数のファイルをロードする必要がある場合、これはボトルネックになります。すべてのユーザーが高速ネットワーク接続を持っているわけではなく、コンテンツがロードされる前にライブラリ、CSS、およびJavaScriptがロードされるのを待つのがイライラする可能性があります。高速ネットワークユーザーでさえ、場合によっては接続を失う可能性があります(トンネルなど)。 Webサイトが重要なCSSを象徴しており、メインコンテンツが表示される前に他のファイルがロードされていない場合、接続が壊れている場合でもユーザーはメインコンテンツにアクセスできます。

次の図は、通常のWebページと最適化されたWebページの違いを示しています。最適化されたバージョンでは、ユーザーは約0.5秒前のコンテンツにアクセスできます。多数の追加ライブラリをロードする必要がある場合、改善はより明白になります。

How and Why You Should Inline Your Critical CSS

キーCSSにインランスする必要がありますか?

状況に依存します。大きなフレームワークやライブラリを使用しておらず、独自のCSSファイルサイズも小さい場合は、CSSをインライン化する必要がない場合があります。

ブートストラップなどのフレームを使用する場合、フレームのすべての機能は使用されない場合があります。この場合、フレームワークスタイルシートから重要なCSSのみを抽出し、実際のフレームワークを非同期にロードできます。これにより、Webサイトの速度が大幅に向上します。

インラインスタイルシートはキャッシュできますが、HTMLは通常キャッシュされていません(通常は推奨されません!)。これは、2つの間に違いがあることを意味します。更新を行うときはこれを覚えておいてください!さらに、インラインCSSにより、ユーザーがWebサイトをロードするたびにページサイズが増加します。たとえば、ウェブサイトにページごとに30kbのインラインCSSがある場合、1人のユーザーが10ページのビューで300kbを消費します。これは大したことではないように聞こえるかもしれませんが、世界の一部の地域(および3G/4Gデータプラン)では、データは高価です。インラインを計画しているCSSがページにとって本当に重要であり、すべてをインラインではないことを確認してください。

(以下のコンテンツは元のテキストに似ています。複製を避けるために、キーCSSの検索方法、Grunt、NPMモジュール、GULPおよびその他のツールを使用する方法の詳細な手順、および最終的なFAQセクションは省略されています。これらは、元のテキストを通して見つかります

概要

重要なCSSをインラインにするかどうかは、ユーザーのアクセスパターンとWebサイト構造に依存するかどうか。サイトが単一ページのWebサイトである場合、訪問者は頻繁にアクセスしません。または、フレームワークとプラグインを備えた複雑なWebサイトがある場合、インラインの重要なCSSはパフォーマンスを大幅に改善できます。

インラインCSSの唯一の懸念は、訪問ごとにページサイズを増加させることです。これは、Cookieを使用して、最初の訪問時に重要なCSSを送信しながら、完全なCSSファイルを非同期にロードおよびキャッシュすることで軽減できます。これは少し複雑ですが、同時に両方の世界を最大限に活用できます。

以上が重要なCSSをインラインにする方法と理由の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

粘着性のあるポジショニングとサスのダッシュを備えた積み重ねられたカード 粘着性のあるポジショニングとサスのダッシュを備えた積み重ねられたカード Apr 03, 2025 am 10:30 AM

先日、Corey Ginnivanのウェブサイトから、この特に素敵なビットを見つけました。そこでは、スクロール中にカードのコレクションが互いに積み重ねられていました。

Googleフォント変数フォント Googleフォント変数フォント Apr 09, 2025 am 10:42 AM

Google Fontsが新しいデザイン(ツイート)を展開したようです。最後の大きな再設計と比較して、これははるかに反復的です。違いをほとんど伝えることができません

HTML、CSS、JavaScriptを使用してアニメーションカウントダウンタイマーを作成する方法 HTML、CSS、JavaScriptを使用してアニメーションカウントダウンタイマーを作成する方法 Apr 11, 2025 am 11:29 AM

プロジェクトにカウントダウンタイマーが必要だったことはありますか?そのようなことのために、プラグインに手を伸ばすのは自然なことかもしれませんが、実際にはもっとたくさんあります

フレックスレイアウト内の紫色のスラッシュ領域が誤って「オーバーフロー空間」と見なされるのはなぜですか? フレックスレイアウト内の紫色のスラッシュ領域が誤って「オーバーフロー空間」と見なされるのはなぜですか? Apr 05, 2025 pm 05:51 PM

フレックスレイアウトの紫色のスラッシュ領域に関する質問フレックスレイアウトを使用すると、開発者ツールなどの混乱する現象に遭遇する可能性があります(D ...

CSSを介してファーストクラスの名前アイテムを使用して子要素を選択する方法は? CSSを介してファーストクラスの名前アイテムを使用して子要素を選択する方法は? Apr 05, 2025 pm 11:24 PM

要素の数が固定されていない場合、CSSを介して指定されたクラス名の最初の子要素を選択する方法。 HTML構造を処理するとき、あなたはしばしば異なる要素に遭遇します...

HTMLデータ属性ガイド HTMLデータ属性ガイド Apr 11, 2025 am 11:50 AM

HTML、CSS、およびJavaScriptのデータ属性について知りたいと思っていたことはすべて。

SASSをより速くするための概念の証明 SASSをより速くするための概念の証明 Apr 16, 2025 am 10:38 AM

新しいプロジェクトの開始時に、SASSコンピレーションは瞬く間に起こります。これは、特にbrowsersyncとペアになっている場合は素晴らしい気分です。

See all articles