Gerador de CSS crítico
Um widget de navegador gratuito para um gerador de CSS crítico avançado e otimizador acima da dobra . Uma ferramenta para obter um resultado perfeito em pixels com o mínimo de CSS possível.
O melhor resultado crítico de CSS é obtido em um navegador real.
O widget do navegador é executado na página na qual o CSS crítico deve ser extraído e, portanto, tem acesso nativo total ao ambiente CSS original.
Você pode selecionar as folhas de estilo ou elementos de folha de estilo embutidos dos quais extrair CSS crítico. Isso é útil para criar CSS crítico que pode ser compartilhado entre as páginas.
O widget do navegador também possui um recurso para remover CSS crítico das folhas de estilo.
A ferramenta é livre de espionagem. Sem Google Analytics ou rastreamento. Seguro de usar e pode ser usado localmente por meio de um cache do 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.
Instalar
Para instalar o widget,
para a barra de favoritos ou copie e cole o código abaixo.x.pagespeed.pro
a manter as configurações nos domínios e a usar o widget off-line ou no localhost
.Otimizador acima da dobra
Gerador de CSS crítico e otimizador acima da dobra
O gerador de CSS crítico permite resolver as principais métricas da Web do Google para remover a penalidade de CSS não utilizado puramente com base no CSS mínimo.
Características
Gerador de CSS crítico avançado
- Custom desenvolvido com base em PostCSS , um dos melhores parsers CSS.
- Suporta várias janelas de visualização (desktop + mobile) para CSS crítico responsivo .
- O marionetista gosta de controle do navegador, incluindo clique, eventos do mouse (passar o mouse, mover etc.), rolagem, execução de código javascript personalizado e muito mais.
- Saída CSS crítica pura não otimizada bruta.
Otimizador acima da dobra
- Compare o CSS crítico com o CSS original.
- Réguas de medida de pixel personalizáveis.
Ferramentas avançadas de otimização
- Removedor de CSS não utilizado para remover CSS crítico das folhas de estilo.
- Software profissional de compactação CSS (minify) e otimização.
- Reparo de CSS quebrado. Uma ferramenta para corrigir CSS malformado.
- Prefixador automático. Uma ferramenta para aplicar prefixos de navegador a CSS.
- Estatísticas e análises de CSS.
- CSS embelezar.
- Lint CSS avançado.
- Removedor de CSS duplicado.
- Editor CSS avançado conectado ao lint CSS com dicas de otimização.
Como usar
Etapa 1: iniciar o widget do navegador em uma página
Navigate to the page for which you want to extract critical CSS and start the browser widget. Click here for installation instructions.
Etapa 2: gerar CSS crítico
O gerador de CSS crítico pode ser acessado por meio da guia Ferramentas no cabeçalho.
Configure the JSON using the options in the the documentation.
Passo 3: otimize o resultado
A saída do gerador de CSS crítico é bruta e requer otimização adicional, como compactação.
O botão Otimizar no menu do editor permite aplicar otimização e compactação de código avançadas.
Documentação
Gerador de CSS crítico
O gerador de CSS crítico aceita as seguintes opções.
Mostrar exemplo de configuração
Exemplo de configuração crítica do gerador de 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": "Defina a janela de visualização para descoberta de CSS acima da dobra."
},
{
"wait": 1000,
"notes": "Aguarde 1000ms para permitir que a viewport seja renderizada."
},
{
"run": true,
"notes": "Execute o gerador de CSS crítico (cálculo de CSS acima da dobra)."
},
{
"mouseevent": "click",
"selector": "a.nav-menu",
"notes": "Acione o novo MouseEvent em um elemento DOM de menu de navegação."
},
{
"wait": 2000
},
{
"run": true
},
{
"script": "close_nav_menu();",
"notes": "Execute um script, neste caso, feche o menu antes de continuar com a próxima viewport."
},
{
"viewport": "1300x900"
},
{
"wait": 1000
},
{
"run": true
}
]
}
Ações de interface do usuário do gerador de CSS crítico
O gerador de CSS crítico fornece controle de navegador semelhante ao Puppeteer. O parâmetro ui_actions
aceita uma matriz com objetos de ação da interface do usuário que definem as alterações de estado da interface do usuário em ordem cronológica.
run
Execute o gerador de CSS crítico no estado atual da interface do usuário. Essa ação precisa ser repetida toda vez que o estado da interface do usuário for alterado para descobrir o novo código CSS acima da dobra.
{
"run": true
}
wait
Aguarde alguns milissegundos antes de continuar com a próxima ação.
{
"wait": 1000
}
viewport
Defina o tamanho da janela de visualização.
{
"viewport": "1300x900"
}
scroll
Role a janela de visualização. A opção aceita um valor numérico (pixels do topo), uma string de porcentagem ( 50%
) ou uma matriz com posições [x,y]
em pixels.
{
"scroll": 400
}
event
Acione um evento do navegador ( new Event()
) em um seletor DOM opcional.
{
"event": "click",
"selector": "a.link"
}
mouseevent
Acione um evento de mouse ( new MouseEvent()
) em um seletor DOM opcional. A ação aceita um parâmetro mouseEventInit
com opções MouseEvent que inclui a capacidade de definir as coordenadas x,y. Quando mouseEventInit
é omitido, as opções padrão são {"bubbles": true,"cancelable": true}
.
{
"mouseevent": "mouseover",
"selector": "a.link",
"mouseEventInit": {
"bubbles": true,
"cancelable": true
}
}
script
Avalie o código javascript. Esta ação permite executar o código javascript em uma página, por exemplo, para fechar pop-ups antes de fazer outras alterações no estado da interface do usuário.
{
"script": "Popups.close();"
}
fn
Execute uma função javascript. Esta ação permite executar uma função javascript pré-configurada. A opção extra "promise":true
permite esperar uma promessa e aguardar a resolução da promessa antes de continuar com a próxima ação.
{
"fn": "action_to_perform",
"promise": true
}
notes
Cada objeto de ação aceita um parâmetro notes
que pode ser usado para adicionar texto descritivo.
{
"script": "add_to_cart();",
"notes": "descrição da ação da interface do usuário para uso pessoal"
}
Mostrar exemplo de configuração
Exemplo de configuração de ações da IU
{
"ui_actions": [
{
"viewport": "360x640",
"notes": "Defina a janela de visualização para descoberta de CSS acima da dobra."
},
{
"wait": 1000,
"notes": "Aguarde 1000ms para permitir que a viewport seja renderizada."
},
{
"run": true,
"notes": "Execute o gerador de CSS crítico (cálculo de CSS acima da dobra)."
},
{
"mouseevent": "click",
"selector": "a.nav-menu",
"notes": "Acione o novo MouseEvent em um elemento DOM de menu de navegação."
},
{
"wait": 2000
},
{
"run": true
},
{
"script": "close_nav_menu();",
"notes": "Execute um script, neste caso, feche o menu antes de continuar com a próxima viewport."
},
{
"viewport": "1300x900"
},
{
"wait": 1000
},
{
"run": true
}
]
}
Removedor de CSS não utilizado
O removedor de CSS não usado usa o mesmo software que o extrator de CSS crítico e aceita quase as mesmas opções de configuração, incluindo controle de navegador semelhante ao Puppeteer por meio de ações de interface do usuário. A ferramenta também permite extrair CSS não utilizado.
Mostrar exemplo de configuração
Exemplo de configuração de removedor de CSS não utilizado
{
"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
}
]
}
Removedor de CSS duplicado
O removedor de CSS duplicado permite comparar duas folhas de estilo e remover ou extrair o CSS duplicado.
Mostrar exemplo de configuração
Exemplo de configuração do removedor de CSS duplicado
{
"atRulesToKeep": [],
"atRulesToRemove": [],
"selectorsToKeep": [],
"selectorsToRemove": [],
"propertiesToKeep": [],
"propertiesToRemove": [],
"strictParser": false
}
O segundo campo de entrada aceita o número do índice da folha de estilo. Você pode encontrar o índice de uma folha de estilo na visão geral da folha de estilo na guia de configurações.
Visão geral do índice da folha de estilo
Você pode fazer upload de uma folha de estilo ou comparar folhas de estilo de URL(s) externo(s) criando uma nova folha de estilo. Você pode importar URLs ou fazer upload das folhas de estilo e usar o índice da nova folha de estilo no removedor de CSS duplicado.
Importar ou fazer upload de folhas de estilo
Uma vez configurado, pressione o botão para iniciar o removedor de CSS duplicado. Um comentário CSS exibirá estatísticas básicas do CSS reduzido resultante.
Resultado do removedor de CSS duplicado