Kritischer CSS-Generator
Ein kostenloses Browser-Widget für einen fortschrittlichen kritischen CSS-Generator und einen „above-the-fold“-Optimierer . Ein Tool, um mit möglichst wenig CSS ein pixelgenaues Ergebnis zu erzielen.
Das beste kritische CSS-Ergebnis wird in einem echten Browser erzielt.
Das Browser-Widget wird auf der Seite ausgeführt, auf der kritisches CSS extrahiert werden soll, und hat daher vollen nativen Zugriff auf die ursprüngliche CSS-Umgebung.
Sie können die Stylesheets oder Inline-Stylesheet-Elemente auswählen, aus denen wichtiges CSS extrahiert werden soll. Dies ist praktisch, um kritisches CSS zu erstellen, das zwischen Seiten geteilt werden kann.
Das Browser-Widget hat auch eine Funktion, um kritisches CSS aus Stylesheets zu entfernen.
Das Tool ist spionagefrei. Kein Google Analytics oder Tracking. Sicher zu verwenden und kann lokal über einen Service Worker-Cache verwendet werden.
The browser-widget provides an example of more advanced critical CSS software that can be used through a Chrome browser in Google Cloud. See for more information our professional optimization plugin.
Installieren
Um das Widget zu installieren,
in die Favoritenleiste oder kopieren Sie den folgenden Code und fügen Sie ihn ein.x.pagespeed.pro
, um Einstellungen domainübergreifend beizubehalten und das Widget offline oder auf localhost
zu verwenden.Above-the-Fold-Optimierer
Kritischer CSS-Generator und „above the fold“-Optimierer
Der Critical-CSS-Generator ermöglicht es, Googles Core Web Vitals-Strafe ungenutzte CSS-Strafe allein auf der Basis von minimalem CSS zu beseitigen .
Merkmale
Fortschrittlicher kritischer CSS-Generator
- Kundenspezifisch entwickelt basierend auf PostCSS , einem der besten CSS-Parser.
- Unterstützt mehrere Ansichtsfenster (Desktop + Mobil) für reaktionsschnelles kritisches CSS .
- Puppeteer-ähnliche Browsersteuerung, einschließlich Klicken, Mausereignisse (Hover, Bewegen usw.), Scrollen, Ausführung von benutzerdefiniertem Javascript-Code und vielem mehr.
- Rohe, nicht optimierte, reine, kritische CSS-Ausgabe.
Above-the-Fold-Optimierer
- Vergleichen Sie kritisches CSS mit dem ursprünglichen CSS.
- Anpassbare Pixelmaßlineale.
Erweiterte Optimierungstools
- Unbenutzter CSS-Entferner zum Entfernen von kritischem CSS aus Stylesheets.
- Professionelle CSS-Komprimierungs- (Minify) und Optimierungssoftware.
- Defekte CSS-Reparatur. Ein Tool zum Beheben von fehlerhaftem CSS.
- Autoprefixer. Ein Tool zum Anwenden von Browserpräfixen auf CSS.
- CSS-Statistiken und Analysen.
- CSS verschönern.
- Fortgeschrittenes CSS-Flusen.
- Duplikat-CSS-Entferner.
- Erweiterter CSS-Editor verbunden mit CSS Lint mit Optimierungstipps.
Wie benutzt man
Schritt 1: Starten Sie das Browser-Widget auf einer Seite
Navigate to the page for which you want to extract critical CSS and start the browser widget. Click here for installation instructions.
Schritt 2: Kritisches CSS generieren
Auf den kritischen CSS-Generator kann über die Registerkarte Tools in der Kopfzeile zugegriffen werden.
Configure the JSON using the options in the the documentation.
Schritt 3: Optimieren Sie das Ergebnis
Die Ausgabe des kritischen CSS-Generators ist roh und erfordert eine weitere Optimierung wie Komprimierung.
Die Schaltfläche Optimieren im Editormenü ermöglicht die Anwendung erweiterter Codeoptimierung und -komprimierung.
Dokumentation
Kritischer CSS-Generator
Der kritische CSS-Generator akzeptiert die folgenden Optionen.
Beispielkonfiguration anzeigen
Beispielkonfiguration für einen kritischen CSS-Generator
{
"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": "Stellen Sie den Darstellungsbereich für die CSS-Erkennung "above the fold" ein."
},
{
"wait": 1000,
"notes": "Warten Sie 1000 ms, damit der Darstellungsbereich gerendert werden kann."
},
{
"run": true,
"notes": "Führen Sie einen kritischen CSS-Generator aus (above-the-fold-CSS-Berechnung)."
},
{
"mouseevent": "click",
"selector": "a.nav-menu",
"notes": "Feuern Sie ein neues MouseEvent auf einem.nav-menu DOM-Element ab."
},
{
"wait": 2000
},
{
"run": true
},
{
"script": "close_nav_menu();",
"notes": "Führen Sie ein Skript aus, schließen Sie in diesem Fall das Menü, bevor Sie mit dem nächsten Ansichtsfenster fortfahren."
},
{
"viewport": "1300x900"
},
{
"wait": 1000
},
{
"run": true
}
]
}
UI-Aktionen des Critical CSS-Generators
Der kritische CSS-Generator bietet eine Puppeteer-ähnliche Browsersteuerung. Der Parameter ui_actions
akzeptiert ein Array mit UI-Aktionsobjekten, die UI-Statusänderungen in chronologischer Reihenfolge definieren.
run
Führen Sie den kritischen CSS-Generator im aktuellen UI-Status aus. Diese Aktion muss jedes Mal wiederholt werden, wenn sich der UI-Status geändert hat, um neuen „above-the-fold“-CSS-Code zu entdecken.
{
"run": true
}
wait
Warten Sie einige Millisekunden, bevor Sie mit der nächsten Aktion fortfahren.
{
"wait": 1000
}
viewport
Stellen Sie die Größe des Ansichtsfensters ein.
{
"viewport": "1300x900"
}
scroll
Scrollen Sie durch das Ansichtsfenster. Die Option akzeptiert einen numerischen Wert (Pixel von oben), eine Prozentzeichenfolge ( 50%
) oder ein Array mit [x,y]
-Positionen in Pixeln.
{
"scroll": 400
}
event
Löst ein Browser-Ereignis ( new Event()
) auf einem optionalen DOM-Selektor aus.
{
"event": "click",
"selector": "a.link"
}
mouseevent
Lösen Sie ein Mausereignis ( new MouseEvent()
) auf einem optionalen DOM-Selektor aus. Die Aktion akzeptiert einen mouseEventInit
Parameter mit MouseEvent-Optionen , der die Möglichkeit beinhaltet, die x-, y-Koordinaten festzulegen. Wenn mouseEventInit
ausgelassen wird, sind die Standardoptionen {"bubbles": true,"cancelable": true}
.
{
"mouseevent": "mouseover",
"selector": "a.link",
"mouseEventInit": {
"bubbles": true,
"cancelable": true
}
}
script
JavaScript-Code auswerten. Diese Aktion ermöglicht es, Javascript-Code auf einer Seite auszuführen, zB um Popups zu schließen, bevor weitere UI-Statusänderungen vorgenommen werden.
{
"script": "Popups.close();"
}
fn
Führen Sie eine Javascript-Funktion aus. Diese Aktion ermöglicht das Ausführen einer vorkonfigurierten Javascript-Funktion. Die zusätzliche Option "promise":true
ermöglicht es, ein Promise zu erwarten und auf dessen Auflösung zu warten, bevor mit der nächsten Aktion fortgefahren wird.
{
"fn": "action_to_perform",
"promise": true
}
notes
Jedes Aktionsobjekt akzeptiert einen notes
, der zum Hinzufügen von beschreibendem Text verwendet werden kann.
{
"script": "add_to_cart();",
"notes": "Beschreibung der UI-Aktion für den persönlichen Gebrauch"
}
Beispielkonfiguration anzeigen
Beispielkonfiguration für UI-Aktionen
{
"ui_actions": [
{
"viewport": "360x640",
"notes": "Stellen Sie den Darstellungsbereich für die CSS-Erkennung "above the fold" ein."
},
{
"wait": 1000,
"notes": "Warten Sie 1000 ms, damit der Darstellungsbereich gerendert werden kann."
},
{
"run": true,
"notes": "Führen Sie einen kritischen CSS-Generator aus (above-the-fold-CSS-Berechnung)."
},
{
"mouseevent": "click",
"selector": "a.nav-menu",
"notes": "Feuern Sie ein neues MouseEvent auf einem.nav-menu DOM-Element ab."
},
{
"wait": 2000
},
{
"run": true
},
{
"script": "close_nav_menu();",
"notes": "Führen Sie ein Skript aus, schließen Sie in diesem Fall das Menü, bevor Sie mit dem nächsten Ansichtsfenster fortfahren."
},
{
"viewport": "1300x900"
},
{
"wait": 1000
},
{
"run": true
}
]
}
Unbenutzter CSS-Entferner
Der unbenutzte CSS-Entferner verwendet dieselbe Software wie der kritische CSS-Extraktor und akzeptiert fast dieselben Konfigurationsoptionen, einschließlich einer Puppeteer-ähnlichen Browsersteuerung durch UI-Aktionen. Das Tool ermöglicht auch das Extrahieren von nicht verwendetem CSS.
Beispielkonfiguration anzeigen
Beispielkonfiguration eines unbenutzten CSS-Entferners
{
"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
}
]
}
Duplikat-CSS-Entferner
Der doppelte CSS-Entferner ermöglicht es, zwei Stylesheets zu vergleichen und das doppelte CSS zu entfernen oder zu extrahieren.
Beispielkonfiguration anzeigen
Beispielkonfiguration des doppelten CSS-Entferners
{
"atRulesToKeep": [],
"atRulesToRemove": [],
"selectorsToKeep": [],
"selectorsToRemove": [],
"propertiesToKeep": [],
"propertiesToRemove": [],
"strictParser": false
}
Das zweite Eingabefeld akzeptiert die Indexnummer des Stylesheets. Den Index eines Stylesheets finden Sie in der Stylesheet-Übersicht auf der Registerkarte Einstellungen.
Überblick über den Stylesheet-Index
Sie können ein Stylesheet hochladen oder Stylesheets von externen URLs vergleichen, indem Sie ein neues Stylesheet erstellen. Sie können dann URLs importieren oder die Stylesheets hochladen und den Index aus dem neuen Stylesheet im doppelten CSS-Entferner verwenden.
Stylesheets importieren oder hochladen
Drücken Sie nach der Konfiguration die Schaltfläche, um den Duplikat-CSS-Entferner zu starten. Ein CSS-Kommentar zeigt grundlegende Statistiken des resultierenden reduzierten CSS an.
Ergebnis des doppelten CSS-Entferners