重要な CSS ジェネレーター
高度な重要な CSS ジェネレーターとスクロールせずに見える範囲のオプティマイザーのための無料のブラウザー ウィジェット。
スクロールせずに見えるオプティマイザ
導入
クリティカル CSS ジェネレーターを使用すると、純粋に最小限の CSS に基づいて、Google の Core Web Vitalsの未使用 CSSペナルティを解決できます。これにより、ピクセルパーフェクトな結果を達成することができます。
最も重要な CSS の結果は、実際のブラウザーで達成されます。
ブラウザー ウィジェットは、重要な CSS が抽出されるページで実行されるため、元の CSS 環境に完全にネイティブ アクセスできます。
重要な CSS を抽出するスタイルシートまたはインライン スタイルシート要素を選択できます。これは、ページ間で共有できる重要な CSS を作成するのに便利です。
ブラウザ ウィジェットには、重要な CSS をスタイルシートから削除する機能もあります。
このツールはスパイフリーです。 Google アナリティクスや追跡はありません。安全に使用でき、Service Worker キャッシュを介してローカルで使用できます。
ブラウザ ウィジェットは、Google Cloud の Chrome ブラウザを通じて使用できる、より高度な重要な CSS ソフトウェアの例を提供します。詳細については、専門的な最適化プラグインを参照してください。
インストール
ウィジェットをインストールするには、
か、以下のコードをコピーして貼り付けます。x.pagespeed.pro
のService WorkerとCache-APIを承認して、ドメイン間で設定を保持し、オフラインまたはlocalhost
でウィジェットを使用できるようにします。特徴
高度なクリティカル CSS ジェネレーター
- 最高の CSS パーサーの 1 つであるPostCSSに基づいてカスタム開発されました。
- レスポンシブ クリティカル CSS用に複数のビューポート (デスクトップ + モバイル) をサポートします。
- クリック、マウス イベント (ホバー、移動など)、スクロール、カスタム JavaScript コードの実行などを含むブラウザー コントロールのような操り人形師。
- 生の最適化されていない純粋な重要な CSS 出力。
スクロールせずに見えるオプティマイザ
- 重要な CSS と元の CSS を比較します。
- カスタマイズ可能なピクセル メジャー ルーラー。
高度な最適化ツール
- スタイルシートから重要な CSS を削除する未使用の CSS リムーバー。
- プロ仕様の CSS 圧縮 (ミニファイ) および最適化ソフトウェア。
- 壊れた CSS の修復。不正な CSS を修正するツール。
- オートプレフィクサー。ブラウザのプレフィックスを CSS に適用するツール。
- CSS の統計と分析。
- CSS美化。
- 高度な CSS リント。
- 重複 CSS リムーバー。
- 最適化のヒントを備えた CSS lint に接続された高度な CSS エディター。
使い方
ステップ 1: ページでブラウザー ウィジェットを開始する
重要な CSS を抽出するページに移動し、ブラウザー ウィジェットを起動します。インストール手順については、ここをクリックしてください。
ステップ 2: 重要な CSS を生成する
重要な CSS ジェネレーターには、ヘッダーの[ツール]タブからアクセスできます。
ドキュメントのオプションを使用して JSON を構成します。
ステップ 3: 結果を最適化する
重要な CSS ジェネレーターの出力は未加工であり、圧縮などのさらなる最適化が必要です。
エディター メニューの[最適化]ボタンを使用すると、高度なコードの最適化と圧縮を適用できます。
ドキュメンテーション
重要な CSS ジェネレーター
重要な CSS ジェネレーターは、次のオプションを受け入れます。
重要な CSS ジェネレーター構成の例
{
"atRulesToKeep": [],
"atRulesToRemove": [],
"selectorsToKeep": [
"*",
"*:before",
"*:after",
"html",
"body"
],
"selectorsToRemove": [
"/\#C/",
"/\.chattxt/"
],
"propertiesToKeep": [],
"propertiesToRemove": [
"/(.*)transition(.*)/i",
"cursor",
"pointer-events",
"/(-webkit-)?tap-highlight-color/i",
"/(.*)user-select/i"
],
"pseudoSelectorsToKeep": [
"::before",
"::after",
"::first-letter",
"::first-line",
":before",
":after",
":first-letter",
":first-line",
":visited",
"/:nth-child.*/"
],
"pseudoSelectorsToRemove": [],
"maxElementsToCheckPerSelector": false,
"maxEmbeddedBase64Length": 1000,
"strictParser": false,
"ui_actions": [
{
"viewport": "360x640",
"notes": "スクロールせずに見える CSS 検出用のビューポートを設定します。"
},
{
"wait": 1000,
"notes": "ビューポートがレンダリングできるようになるまで 1000 ミリ秒待ちます。"
},
{
"run": true,
"notes": "重要な CSS ジェネレーター (スクロールせずに見える CSS の計算) を実行します。"
},
{
"mouseevent": "click",
"selector": "a.nav-menu",
"notes": "a.nav-menu DOM 要素で新しい MouseEvent を発生させます。"
},
{
"wait": 2000
},
{
"run": true
},
{
"script": "close_nav_menu();",
"notes": "スクリプトを実行します。この場合、次のビューポートに進む前にメニューを閉じます。"
},
{
"viewport": "1300x900"
},
{
"wait": 1000
},
{
"run": true
}
]
}
Critical CSS ジェネレーターのUI アクション
重要な CSS ジェネレーターは、Puppeteer のようなブラウザー コントロールを提供します。 ui_actions
パラメーターは、UI 状態の変化を時系列で定義する UI アクション オブジェクトを含む配列を受け入れます。
run
現在の UI 状態で重要な CSS ジェネレーターを実行します。スクロールせずに見える新しい CSS コードを検出するには、UI の状態が変化するたびにこのアクションを繰り返す必要があります。
{
"run": true
}
wait
次のアクションに進む前に、数ミリ秒待機します。
{
"wait": 1000
}
viewport
ビューポート サイズを設定します。
{
"viewport": "1300x900"
}
scroll
ビューポートをスクロールします。このオプションは、数値 (上からのピクセル数)、パーセンテージ文字列 ( 50%
)、またはピクセル単位の[x,y]
位置の配列を受け入れます。
{
"scroll": 400
}
event
オプションの DOM セレクターでブラウザー イベント ( new Event()
) をトリガーします。
{
"event": "click",
"selector": "a.link"
}
mouseevent
オプションの DOM セレクターでマウス イベント ( new MouseEvent()
) をトリガーします。このアクションは、x、y 座標を設定する機能を含むMouseEvent オプションを含むmouseEventInit
パラメータを受け入れます。 mouseEventInit
を省略した場合、デフォルトのオプションは{"bubbles": true,"cancelable": true}
です。
{
"mouseevent": "mouseover",
"selector": "a.link",
"mouseEventInit": {
"bubbles": true,
"cancelable": true
}
}
script
JavaScript コードを評価します。このアクションにより、ページで JavaScript コードを実行できます。たとえば、さらに UI の状態を変更する前にポップアップを閉じることができます。
{
"script": "Popups.close();"
}
fn
JavaScript 関数を実行します。このアクションにより、事前構成された JavaScript 関数を実行できます。追加のオプション"promise":true
使用すると、promise を期待し、promise が解決するのを待ってから次のアクションに進むことができます。
{
"fn": "action_to_perform",
"promise": true
}
notes
各アクション オブジェクトは、説明テキストを追加するために使用できるnotes
パラメータを受け入れます。
{
"script": "add_to_cart();",
"notes": "個人用のUIアクションの説明"
}
UI アクション構成の例
{
"ui_actions": [
{
"viewport": "360x640",
"notes": "スクロールせずに見える CSS 検出用のビューポートを設定します。"
},
{
"wait": 1000,
"notes": "ビューポートがレンダリングできるようになるまで 1000 ミリ秒待ちます。"
},
{
"run": true,
"notes": "重要な CSS ジェネレーター (スクロールせずに見える CSS の計算) を実行します。"
},
{
"mouseevent": "click",
"selector": "a.nav-menu",
"notes": "a.nav-menu DOM 要素で新しい MouseEvent を発生させます。"
},
{
"wait": 2000
},
{
"run": true
},
{
"script": "close_nav_menu();",
"notes": "スクリプトを実行します。この場合、次のビューポートに進む前にメニューを閉じます。"
},
{
"viewport": "1300x900"
},
{
"wait": 1000
},
{
"run": true
}
]
}
未使用の CSS リムーバー
未使用の CSS リムーバーは、重要な CSS エクストラクターと同じソフトウェアを使用し、UI アクションによる Puppeteer のようなブラウザー コントロールなど、ほぼ同じ構成オプションを受け入れます。このツールを使用すると、未使用の CSS を抽出することもできます。
未使用のCSSリムーバーの設定例
{
"atRulesToKeep": [
"charset",
"keyframes",
"import",
"namespace",
"page"
],
"atRulesToRemove": [],
"selectorsToKeep": [
"*",
"*:before",
"*:after",
"html",
"body"
],
"selectorsToRemove": [],
"propertiesToKeep": [],
"propertiesToRemove": [],
"pseudoSelectorsToKeep": [
"/:.*/"
],
"pseudoSelectorsToRemove": [],
"maxElementsToCheckPerSelector": false,
"strictParser": false,
"ui_actions": [
{
run: true
}
]
}
重複CSSリムーバー
重複 CSS リムーバーを使用すると、2 つのスタイルシートを比較して、重複する CSS を削除または抽出できます。
重複CSSリムーバーの設定例
{
"atRulesToKeep": [],
"atRulesToRemove": [],
"selectorsToKeep": [],
"selectorsToRemove": [],
"propertiesToKeep": [],
"propertiesToRemove": [],
"strictParser": false
}
2 番目の入力フィールドは、スタイルシートのインデックス番号を受け入れます。スタイルシートのインデックスは、設定タブのスタイルシートの概要で確認できます。
新しいスタイルシートを作成して、スタイルシートをアップロードしたり、外部 URL からスタイルシートを比較したりできます。その後、URL をインポートするか、スタイルシートをアップロードして、重複する CSS リムーバーで新しいスタイルシートのインデックスを使用できます。
設定したら、ボタンを押して重複 CSS リムーバーを開始します。 CSS コメントには、縮小された CSS の基本的な統計が表示されます。