Minificador de CSS

Um arquivo CSS minificado carrega visivelmente mais rápido do que seu equivalente formatado, e a diferença se acumula a cada carregamento de página. Este minificador remove espaços em branco e comentários e os pontos e vírgulas finais, sem alterar a cascata ou o efeito de qualquer regra. A saída é sempre um CSS válido que os navegadores interpretam de forma idêntica ao original.

Como minificar CSS

  1. 1

    Cole o CSS

    Qualquer CSS, escrito à mão, compilado em Sass, blocos de estilo inline.

  2. 2

    Minificar

    Clique em "Minify CSS" para remover comentários, espaços em branco e pontos e vírgulas finais em uma única passada.

  3. 3

    Confira a economia

    A economia de bytes é exibida ao lado da saída comprimida.

  4. 4

    Copie o resultado

    Copie o CSS minificado para o seu pacote de produção ou salve como `.min.css`.

O que o minificador faz

Transformações (nunca mudam o comportamento):

  • Remover comentários (todos, incluindo blocos /*! de licença).
  • Remover espaços em branco desnecessários (entre seletores, declarações, chaves).
  • Remover ponto e vírgula finais antes de chaves de fechamento.
  • Colapsar regras de várias linhas em uma linha.

É só isso que ele faz, e por isso a saída se comporta exatamente como o original: cada seletor, propriedade e valor permanece como você o escreveu.

Economias típicas

Fonte Tamanho original Tamanho minificado Economia
CSS escrito à mão formatado 20 KB 12 KB 40%
Compilado em Sass, modo dev 45 KB 25 KB 44%
Já minificado + gzip 10 KB 10 KB 0%

Além da minificação, a compressão gzip no servidor adiciona mais 60-80% de economia porque o CSS é altamente redundante. Os dois se acumulam; sempre faça ambos.

O que a minificação não faz

  • Remover CSS não utilizado. Isso é território de tree-shaking / PurgeCSS, que requer a análise do seu HTML ou componentes.
  • Encurtar cores hexadecimais, colapsar unidades zero ou mesclar declarações. Essas transformações agressivas são trabalho do cssnano, esbuild ou Lightning CSS, não desta ferramenta.
  • Mesclar seletores duplicados em um só. Arriscado porque a ordem de origem afeta a cascata; alguns minificadores tentam, a maioria ignora.
  • Renomear classes. Isso é CSS-in-JS ou CSS Modules, não minificação.
  • Inline CSS crítico. Isso é um passo separado no tempo de construção.

Preservando comentários de licença

Muitos minificadores preservam comentários que começam com /*!, usados para cabeçalhos de licença:

/*! Bootstrap v5.3 · MIT License · https://github.com/twbs/bootstrap */

Esta ferramenta remove todos os comentários. Se o seu CSS tiver cabeçalhos de licença, adicione-os novamente após minificar ou use uma ferramenta de construção com opção de preservar licenças, como cssnano ou esbuild.

Mapas de origem

Para depuração em produção, as ferramentas de construção geram um mapa de origem junto com a saída minificada:

styles.min.css
styles.min.css.map

As DevTools podem ler o mapa e mostrar os números das linhas originais formatadas quando você inspeciona um elemento. Esta ferramenta não gera mapas de origem.

Minificação de CSS em um pipeline de construção

  • Vite, Webpack, Parcel: lidam com isso automaticamente em construções de produção.
  • PostCSS com cssnano: o minificador padrão autônomo.
  • esbuild: também inclui minificação de CSS.
  • predefinições cssnano: default para transformações seguras, advanced para agressivas (com algumas compensações).

Esta ferramenta é para minificação pontual, correções rápidas e aprendizado sobre o que os minificadores realmente fazem. Para um fluxo de trabalho de produção, use uma ferramenta de construção para que sua fonte permaneça legível e apenas a saída seja minificada.

Quando a minificação pode quebrar seu CSS

Raro, mas possível:

  • Seletores sensíveis a espaços: .foo .bar vs. .foo.bar, o espaço importa.
  • Valores de propriedades personalizadas com espaços: --shadow: 0 2px 4px rgba(0,0,0,0.1), as vírgulas dentro de rgba() não devem ser removidas.
  • Comentários de bloco não fechados: /* falta fechamento consome tudo depois dele. Minificadores podem se comportar mal com entradas malformadas.

A solução: sempre execute sua saída minificada através de uma verificação de lint/teste antes de enviar.

Perguntas frequentes

Não. Um arquivo CSS minificado corretamente é diferente em bytes, mas semanticamente idêntico. Cada seletor, propriedade e valor produz o mesmo resultado visual. Se você notar uma mudança de renderização, o minificador tem um bug ou sua entrada tinha uma sintaxe sensível a espaços.

Sim, quando você clica em “Minify CSS”. O CSS que você cola é enviado ao nosso servidor para ser minificado e o resultado é devolvido à página. Ele não é salvo em um banco de dados nem adicionado ao link da página.

Depois. Minifique o CSS final compilado que os navegadores realmente recebem. A saída do Sass já é razoavelmente compacta, mas tem espaços em branco e comentários que a minificação remove.

Modesto, mas real, tipicamente 5-15% além do gzip. Remover espaços em branco e comentários também torna os padrões gzip ligeiramente mais densos.

Ferramentas relacionadas

Ferramenta disponível em outros idiomas