Generatore di CSS critici
Un browser-widget gratuito per un generatore CSS critico avanzato e un ottimizzatore above the fold . Uno strumento per ottenere un risultato pixel perfetto con il minimo CSS possibile.
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.
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.
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
.Ottimizzatore above the fold
Generatore CSS critico e ottimizzatore above the fold
Il generatore di CSS critici consente di risolvere i Core Web Vitals di Google rimuovendo la penalità CSS inutilizzata esclusivamente sulla base del CSS minimo.
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
Navigate to the page for which you want to extract critical CSS and start the browser widget. Click here for installation instructions.
Passaggio 2: generare CSS critici
È possibile accedere al generatore CSS critico tramite la scheda Strumenti nell'intestazione.
Configure the JSON using the options in the the documentation.
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.
Panoramica dell'indice del foglio di stile
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.
Importa o carica fogli di stile
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.
Risultato della rimozione di CSS duplicati