Esta pergunta já foi respondida várias vezes. Breve resumo de cada uma delas, um exemplo e informações a partir de setembro de 2019:
- Normalize.css - como o nome sugere, ele normaliza estilos nos navegadores para seus agentes de usuário, ou seja, os torna iguais em todos os navegadores devido ao motivo, por padrão, serem ligeiramente diferentes.
Exemplo : a <h1>
tag interna <section>
por padrão do Google Chrome será menor que o tamanho "esperado" da <h1>
tag. O Microsoft Edge, por outro lado, está criando o tamanho "esperado" da <h1>
tag. O normalize.css o tornará consistente.
Status atual : o repositório npm mostra que o pacote normalize.css possui atualmente mais de 500 mil downloads por semana. As estrelas do GitHub no projeto do repositório têm mais de 36k.
- Redefinir CSS - como o nome sugere, ele redefine todos os estilos, ou seja, remove todos os estilos de agente do usuário do navegador.
Exemplo : faria algo assim abaixo:
html, body, div, span, ..., audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
}
Status atual : é muito menos popular que o Normalize.css, o pacote reset-css mostra algo em torno de 26k downloads por semana. As estrelas do GitHub são apenas 200, como pode ser observado no repositório do projeto .