Critical CSS-generator
Een gratis browser-widget voor een geavanceerde kritieke CSS-generator en above-the-fold optimizer. Een tool om met zo weinig mogelijk CSS een pixel-perfect resultaat te bereiken.
Het beste kritische CSS-resultaat wordt behaald in een echte browser.
De browserwidget wordt uitgevoerd op de pagina waarop kritieke CSS moet worden geรซxtraheerd en heeft daarom volledige native toegang tot de oorspronkelijke CSS-omgeving.
U kunt de stylesheets of inline stylesheet-elementen selecteren waaruit u kritieke CSS wilt extraheren. Dit is handig om kritieke CSS te maken die tussen pagina's kan worden gedeeld.
De browserwidget heeft ook een functie om kritieke CSS uit stylesheets te verwijderen.
De tool is spionagevrij. Geen Google Analytics of tracking. Veilig in gebruik en kan lokaal worden gebruikt via een Service Worker-cache.
De browser-widget geeft een voorbeeld van meer geavanceerde kritieke CSS-software die kan worden gebruikt via een Chrome-browser in Google Cloud. Zie voor meer informatie onze professionele optimalisatie plugin.
Installeren
Om de widget te installeren,
naar de favorietenbalk of kopieert en plakt u de onderstaande code.x.pagespeed.pro
om instellingen op verschillende domeinen te behouden en om de widget offline of op localhost
te gebruiken.Optimalisatie boven de vouw
Kritieke CSS-generator en optimalisatie boven de vouw
De Critical CSS-generator maakt het mogelijk om Google's Core Web Vitals verwijder ongebruikte CSS-penalty op te lossen, puur op basis van minimale CSS.
Functies
Geavanceerde kritieke CSS-generator
- Op maat ontwikkeld op basis van PostCSS, een van de beste CSS-parsers.
- Ondersteunt meerdere viewports (desktop + mobiel) voor responsieve kritische CSS.
- Poppenspeler-achtige browserbesturing inclusief klikken, muisgebeurtenissen (zweven, verplaatsen enz.), scrollen, aangepaste javascript-code-uitvoering en nog veel meer.
- Onbewerkte, niet-geoptimaliseerde pure kritieke CSS-uitvoer.
Optimalisatie boven de vouw
- Vergelijk kritieke CSS met de originele CSS.
- Aanpasbare linialen voor pixelmeting.
Geavanceerde optimalisatie tools
- Ongebruikte CSS-verwijderaar om kritieke CSS uit stylesheets te verwijderen.
- Professionele CSS-compressie (verkleinen) en optimalisatiesoftware.
- Defecte CSS-reparatie. Een tool om misvormde CSS te repareren.
- Autoprefixer. Een hulpmiddel om browservoorvoegsels toe te passen op CSS.
- CSS-statistieken en -analyses.
- CSS beautify.
- Geavanceerde CSS-lint.
- Dubbele CSS-verwijderaar.
- Geavanceerde CSS-editor verbonden met CSS-lint met optimalisatietips.
Hoe te gebruiken
Stap 1: start de browserwidget op een pagina
Navigeer naar de pagina waarvoor u kritieke CSS wilt extraheren en start de browserwidget. Klik hier voor installatie-instructies.
Stap 2: genereer kritieke CSS
De kritieke CSS-generator is toegankelijk via het tabblad Tools in de koptekst.
Configureer de JSON met behulp van de opties in de de documentatie.
Stap 3: optimaliseer het resultaat
De uitvoer van de kritieke CSS-generator is onbewerkt en vereist verdere optimalisatie, zoals compressie.
Met de knop Optimaliseren in het editormenu kunt u geavanceerde code-optimalisatie en compressie toepassen.
Documentatie
Critical CSS-generator
De kritieke CSS-generator accepteert de volgende opties.
Voorbeeld Kritieke CSS-generatorconfiguratie
{
"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": "Stel viewport in voor CSS-detectie boven de vouw."
},
{
"wait": 1000,
"notes": "Wacht 1000 ms om de viewport te laten renderen."
},
{
"run": true,
"notes": "Voer een kritieke CSS-generator uit (boven de vouw CSS-berekening)."
},
{
"mouseevent": "click",
"selector": "a.nav-menu",
"notes": "Start nieuw MouseEvent op een.nav-menu DOM-element."
},
{
"wait": 2000
},
{
"run": true
},
{
"script": "close_nav_menu();",
"notes": "Voer een script uit, sluit in dit geval het menu voordat u verder gaat met het volgende venster."
},
{
"viewport": "1300x900"
},
{
"wait": 1000
},
{
"run": true
}
]
}
UI-acties van de kritieke CSS-generator
De kritieke CSS-generator biedt Puppeteer-achtige browsercontrole. De parameter ui_actions
accepteert een array met UI-actieobjecten die UI-statuswijzigingen in chronologische volgorde definiรซren.
run
Voer de kritieke CSS-generator uit op de huidige UI-status. Deze actie moet elke keer dat de UI-status is gewijzigd worden herhaald om nieuwe CSS-code boven de vouw te ontdekken.
{
"run": true
}
wait
Wacht een aantal milliseconden alvorens verder te gaan met de volgende handeling.
{
"wait": 1000
}
viewport
Stel de viewport-grootte in.
{
"viewport": "1300x900"
}
scroll
Scroll door het kijkvenster. De optie accepteert een numerieke waarde (pixels van boven), een percentagestring (50%
) of een array met [x,y]
posities in pixels.
{
"scroll": 400
}
event
Activeer een browsergebeurtenis (new Event()
) op een optionele DOM-kiezer.
{
"event": "click",
"selector": "a.link"
}
mouseevent
Activeer een muisgebeurtenis (new MouseEvent()
) op een optionele DOM-kiezer. De actie accepteert een parameter mouseEventInit
met MouseEvent-opties met de mogelijkheid om de x,y-coรถrdinaten in te stellen. Wanneer mouseEventInit
wordt weggelaten, zijn de standaardopties {"bubbles": true,"cancelable": true}
.
{
"mouseevent": "mouseover",
"selector": "a.link",
"mouseEventInit": {
"bubbles": true,
"cancelable": true
}
}
script
Evalueer JavaScript-code. Deze actie maakt het mogelijk om javascript-code uit te voeren op een pagina, b.v. om pop-ups te sluiten voordat u verdere wijzigingen in de gebruikersinterface aanbrengt.
{
"script": "Popups.close();"
}
fn
Voer een javascript-functie uit. Deze actie maakt het mogelijk om een vooraf geconfigureerde javascript-functie uit te voeren. De extra optie "promise":true
maakt het mogelijk om een belofte te verwachten en te wachten tot de belofte is opgelost alvorens verder te gaan met de volgende actie.
{
"fn": "action_to_perform",
"promise": true
}
notes
Elk actieobject accepteert een parameter notes
die kan worden gebruikt om beschrijvende tekst toe te voegen.
{
"script": "add_to_cart();",
"notes": "beschrijving van UI-actie voor persoonlijk gebruik"
}
Voorbeeld UI-acties config
{
"ui_actions": [
{
"viewport": "360x640",
"notes": "Stel viewport in voor CSS-detectie boven de vouw."
},
{
"wait": 1000,
"notes": "Wacht 1000 ms om de viewport te laten renderen."
},
{
"run": true,
"notes": "Voer een kritieke CSS-generator uit (boven de vouw CSS-berekening)."
},
{
"mouseevent": "click",
"selector": "a.nav-menu",
"notes": "Start nieuw MouseEvent op een.nav-menu DOM-element."
},
{
"wait": 2000
},
{
"run": true
},
{
"script": "close_nav_menu();",
"notes": "Voer een script uit, sluit in dit geval het menu voordat u verder gaat met het volgende venster."
},
{
"viewport": "1300x900"
},
{
"wait": 1000
},
{
"run": true
}
]
}
Ongebruikte CSS-verwijderaar
De ongebruikte CSS-verwijderaar gebruikt dezelfde software als de kritieke CSS-extractor en accepteert bijna dezelfde configuratie-opties, inclusief Puppeteer-achtige browsercontrole via UI-acties. De tool maakt het ook mogelijk om ongebruikte CSS te extraheren.
Voorbeeldconfiguratie van ongebruikte CSS-verwijderaar
{
"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
}
]
}
Dubbele CSS-verwijderaar
De dubbele CSS-verwijderaar maakt het mogelijk om twee stylesheets te vergelijken en de dubbele CSS te verwijderen of te extraheren.
Voorbeeldconfiguratie van dubbele CSS-verwijderaar
{
"atRulesToKeep": [],
"atRulesToRemove": [],
"selectorsToKeep": [],
"selectorsToRemove": [],
"propertiesToKeep": [],
"propertiesToRemove": [],
"strictParser": false
}
Het tweede invoerveld accepteert het indexnummer van de stylesheet. De index van een stylesheet vind u in het stylesheetoverzicht op het tabblad instellingen.
Stylesheet-indexoverzicht
U kunt een stylesheet uploaden of stylesheets van externe URL('s) vergelijken door een nieuwe stylesheet te maken. U kunt vervolgens URL's importeren of de stylesheets uploaden en de index van de nieuwe stylesheet gebruiken in de dubbele CSS-verwijderaar.
Stylesheets importeren of uploaden
Eenmaal geconfigureerd, drukt u op de knop om de dubbele CSS-verwijderaar te starten. Een CSS-commentaar geeft basisstatistieken weer van de resulterende gereduceerde CSS.
Resultaat van dubbele CSS-verwijderaar