Unidades de tamanho CSS (px rem em vh)

Prefira rem para tipografia de interface; use px apenas em bordas finas e detalhes ao pixel.

Atualizado:

UnidadeRelativo aUso típico
pxPixel do dispositivo (pixel CSS)Bordas, ícones precisos
remTamanho de fonte da raizEscala tipográfica, espaçamento
emTamanho de fonte do paiDimensionamento local do componente
%Propriedade do paiLarguras, layouts flexíveis
vw1% da largura do viewportSeções full-bleed
vh1% da altura do viewportAltura de hero (cuidado com mobile)
vmin / vmaxLado menor/maior do viewportTamanhos responsivos quase quadrados
chLargura do glifo “0”Blocos de código, campos monoespaçados
exAltura x da fonteTipografia fina rara
svh / lvh / dvhViewport pequeno/grande/dinâmicoAltura segura do navegador móvel

Notas

Perguntas frequentes

Quanto é 1rem em px?
1rem equivale ao tamanho de fonte da raiz; com o padrão de 16 px, 1rem vale 16 px.
Qual a diferença entre em e rem?
rem é sempre relativo ao tamanho de fonte do elemento raiz, enquanto em é relativo ao tamanho herdado pelo elemento atual.
Por que 100vh falha no celular?
Navegadores móveis ocultam ou exibem a barra de endereço, então 100vh pode exceder a área visível; use dvh ou svh quando disponível.