Generatore di CSS critici
Un widget del browser gratuito per un generatore avanzato di CSS critici e un ottimizzatore Above-the-fold .
Ottimizzatore above the fold
introduzione
Il generatore Critical CSS consente di risolvere i Core Web Vitals di Google rimuovendo la penalità CSS non utilizzata , esclusivamente sulla base di un CSS minimo. Consente di ottenere un risultato pixel perfetto .
Il miglior risultato CSS critico si ottiene in un vero browser.
Il widget del browser viene eseguito sulla pagina in cui deve essere estratto il CSS critico e quindi ha pieno accesso nativo all'ambiente CSS originale.
Puoi selezionare i fogli di stile o gli elementi del foglio di stile in linea da cui estrarre i CSS critici. Questo è utile per creare CSS critici che possono essere condivisi tra le pagine.
Il widget del browser ha anche una funzione per rimuovere i CSS critici dai fogli di stile.
Lo strumento è privo di spionaggio. Nessun Google Analytics o tracciamento. Sicuro da usare e può essere utilizzato localmente tramite una cache Service Worker.
Il widget del browser fornisce un esempio di software CSS critico più avanzato che può essere utilizzato tramite un browser Chrome in Google Cloud. Per ulteriori informazioni, consulta il nostro plug-in di ottimizzazione professionale .
Installare
Per installare il widget,
nella barra dei preferiti o copia e incolla il codice qui sotto.x.pagespeed.pro
di Google CDN a mantenere le impostazioni tra i domini e a utilizzare il widget offline o su localhost
.Caratteristiche
Generatore avanzato di CSS critici
- Sviluppato su misura basato su PostCSS , uno dei migliori parser CSS.
- Supporta più viewport (desktop + mobile) per CSS critici reattivi .
- Burattinaio come il controllo del browser che include clic, eventi del mouse (passaggio del mouse, spostamento ecc.), scorrimento, esecuzione di codice javascript personalizzato e molto altro.
- Output CSS critico puro non ottimizzato non elaborato.
Ottimizzatore above the fold
- Confronta il CSS critico con il CSS originale.
- Righelli di misura pixel personalizzabili.
Strumenti di ottimizzazione avanzati
- Dispositivo di rimozione CSS inutilizzato per rimuovere CSS critici dai fogli di stile.
- Software professionale di compressione (minify) e ottimizzazione CSS.
- Riparazione CSS rotta. Uno strumento per correggere CSS malformati.
- Prefisso automatico. Uno strumento per applicare i prefissi del browser ai CSS.
- Statistiche e analisi CSS.
- Abbellimento CSS.
- Lint CSS avanzato.
- Dispositivo di rimozione CSS duplicato.
- Editor CSS avanzato collegato a CSS lint con suggerimenti per l'ottimizzazione.
Come usare
Passaggio 1: avvia il widget del browser su una pagina
Passa alla pagina per la quale desideri estrarre i CSS critici e avvia il widget del browser. Fare clic qui per le istruzioni di installazione.
Passaggio 2: generare CSS critici
È possibile accedere al generatore CSS critico tramite la scheda Strumenti nell'intestazione.
Configura il JSON utilizzando le opzioni nella documentazione .
Passaggio 3: ottimizzare il risultato
L'output del generatore CSS critico è grezzo e richiede un'ulteriore ottimizzazione come la compressione.
Il pulsante Ottimizza nel menu dell'editor consente di applicare l'ottimizzazione e la compressione avanzate del codice.
Documentazione
Generatore di CSS critici
Il generatore CSS critico accetta le seguenti opzioni.
Mostra configurazione di esempio
Esempio Configurazione critica del generatore 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": "Imposta il viewport per la scoperta CSS above the fold."
},
{
"wait": 1000,
"notes": "Attendere 1000 ms per abilitare il rendering del viewport."
},
{
"run": true,
"notes": "Esegui un generatore CSS critico (calcolo CSS above the fold)."
},
{
"mouseevent": "click",
"selector": "a.nav-menu",
"notes": "Attiva il nuovo MouseEvent su un elemento DOM del menu nav."
},
{
"wait": 2000
},
{
"run": true
},
{
"script": "close_nav_menu();",
"notes": "Esegui uno script, in questo caso chiudi il menu prima di continuare con la finestra successiva."
},
{
"viewport": "1300x900"
},
{
"wait": 1000
},
{
"run": true
}
]
}
Azioni dell'interfaccia utente del generatore CSS critico
Il generatore CSS critico fornisce un controllo del browser simile a Puppeteer. Il parametro ui_actions
accetta una matrice con oggetti azione dell'interfaccia utente che definiscono le modifiche allo stato dell'interfaccia utente in ordine cronologico.
run
Esegui il generatore CSS critico sullo stato corrente dell'interfaccia utente. Questa azione deve essere ripetuta ogni volta che lo stato dell'interfaccia utente è cambiato per scoprire nuovo codice CSS above the fold.
{
"run": true
}
wait
Attendere alcuni millisecondi prima di continuare con l'azione successiva.
{
"wait": 1000
}
viewport
Imposta la dimensione della vista.
{
"viewport": "1300x900"
}
scroll
Scorri la finestra. L'opzione accetta un valore numerico (pixel dall'alto), una stringa percentuale ( 50%
) o un array con posizioni [x,y]
in pixel.
{
"scroll": 400
}
event
Attiva un evento del browser ( new Event()
) su un selettore DOM facoltativo.
{
"event": "click",
"selector": "a.link"
}
mouseevent
Attiva un evento del mouse ( new MouseEvent()
) su un selettore DOM facoltativo. L'azione accetta un parametro mouseEventInit
con opzioni MouseEvent che include la possibilità di impostare le coordinate x,y. Quando mouseEventInit
viene omesso, le opzioni predefinite sono {"bubbles": true,"cancelable": true}
.
{
"mouseevent": "mouseover",
"selector": "a.link",
"mouseEventInit": {
"bubbles": true,
"cancelable": true
}
}
script
Valuta il codice javascript. Questa azione consente di eseguire codice javascript su una pagina, ad esempio per chiudere i popup prima di apportare ulteriori modifiche allo stato dell'interfaccia utente.
{
"script": "Popups.close();"
}
fn
Eseguire una funzione javascript. Questa azione consente di eseguire una funzione javascript preconfigurata. L'opzione extra "promise":true
consente di aspettarsi una promessa e attendere che la promessa si risolva prima di continuare con l'azione successiva.
{
"fn": "action_to_perform",
"promise": true
}
notes
Ogni oggetto azione accetta un parametro notes
che può essere utilizzato per aggiungere testo descrittivo.
{
"script": "add_to_cart();",
"notes": "descrizione dell'azione dell'interfaccia utente per uso personale"
}
Mostra configurazione di esempio
Esempio di configurazione delle azioni dell'interfaccia utente
{
"ui_actions": [
{
"viewport": "360x640",
"notes": "Imposta il viewport per la scoperta CSS above the fold."
},
{
"wait": 1000,
"notes": "Attendere 1000 ms per abilitare il rendering del viewport."
},
{
"run": true,
"notes": "Esegui un generatore CSS critico (calcolo CSS above the fold)."
},
{
"mouseevent": "click",
"selector": "a.nav-menu",
"notes": "Attiva il nuovo MouseEvent su un elemento DOM del menu nav."
},
{
"wait": 2000
},
{
"run": true
},
{
"script": "close_nav_menu();",
"notes": "Esegui uno script, in questo caso chiudi il menu prima di continuare con la finestra successiva."
},
{
"viewport": "1300x900"
},
{
"wait": 1000
},
{
"run": true
}
]
}
Dispositivo di rimozione CSS inutilizzato
Il dispositivo di rimozione CSS inutilizzato utilizza lo stesso software dell'estrattore CSS critico e accetta quasi le stesse opzioni di configurazione, incluso il controllo del browser simile a Puppeteer tramite azioni dell'interfaccia utente. Lo strumento consente anche di estrarre i CSS inutilizzati.
Mostra configurazione di esempio
Esempio di configurazione del dispositivo di rimozione CSS inutilizzato
{
"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
}
]
}
Dispositivo di rimozione CSS duplicato
Il dispositivo di rimozione CSS duplicato consente di confrontare due fogli di stile e rimuovere o estrarre il CSS duplicato.
Mostra configurazione di esempio
Esempio di configurazione del dispositivo di rimozione CSS duplicato
{
"atRulesToKeep": [],
"atRulesToRemove": [],
"selectorsToKeep": [],
"selectorsToRemove": [],
"propertiesToKeep": [],
"propertiesToRemove": [],
"strictParser": false
}
Il secondo campo di input accetta il numero di indice del foglio di stile. Puoi trovare l'indice di un foglio di stile nella panoramica del foglio di stile nella scheda delle impostazioni.
Puoi caricare un foglio di stile o confrontare fogli di stile da URL esterni creando un nuovo foglio di stile. Puoi quindi importare gli URL o caricare i fogli di stile e utilizzare l'indice dal nuovo foglio di stile nel dispositivo di rimozione CSS duplicato.
Una volta configurato, premi il pulsante per avviare il dispositivo di rimozione dei CSS duplicati. Un commento CSS mostrerà le statistiche di base del CSS ridotto risultante.