Folhas de Estilo em Cascata (CSS) é a linguagem que transforma HTML bruto em páginas web visualmente projetadas. Controla layout, tipografia, cor, movimento e comportamento responsivo — tudo que o usuário vê.
Capacidades Principais
- Tipografia: Famílias de fontes, tamanhos, pesos, altura de linha, espaçamento de letras, fontes variáveis, @font-face para web fonts customizadas.
- Cor e Fundo: Hex, RGB, HSL, cores nomeadas, gradientes (linear, radial, cônico), imagens de fundo, blends, opacidade.
- Layout: Flexbox, CSS Grid, multi-coluna, floats (legado), posicionamento (relative, absolute, fixed, sticky).
- Espaçamento e Dimensionamento: Margin, padding, gap, width/height, min/max, aspect-ratio, box-sizing.
- Bordas e Efeitos: Raio, sombras (box-shadow, text-shadow), contornos, clipping, máscaras, filtros (blur, grayscale).
- Animação e Transição: @keyframes, transition, transform (translate, scale, rotate, skew), prefers-reduced-motion.
- Design Responsivo: Media queries, container queries, unidades de viewport, tipografia fluida (clamp).
- Pseudo-classes/elementos: :hover, :focus, :nth-child, ::before, ::after, ::selection.
- Propriedades Customizadas (Variáveis CSS): Valores reutilizáveis, theming, atualizações em runtime via JS.
- Acessibilidade: Estilos de foco, modos alto contraste, motion reduzido, propriedades lógicas (margin-inline-start).
O Que CSS Não Faz
- Executar lógica/loops (use JavaScript).
- Buscar dados de APIs.
- Modificar estrutura HTML (apenas estiliza).
- Persistir estado entre sessões (use localStorage/cookies via JS).
Melhores Práticas Modernas
- Media queries mobile-first.
- Propriedades lógicas para suporte RTL.
- Variáveis CSS para design tokens.
- Arquitetura em camadas: reset → base → componentes → utilitários.
- Use
@supports para progressive enhancement.
CSS hoje é um poderoso sistema de estilização programável — muito além da simples ferramenta "fonte e cor" dos anos 2000.