DevPath · Aprenda a programar ESPTEN

Design responsivo

Media queries e breakpoints

O que é uma media query?

Uma media query aplica um bloco de CSS somente quando uma condição sobre o viewport é cumprida (normalmente, sua largura). É a ferramenta que faz o design mudar conforme o tamanho da tela.

@media (min-width: 768px) {
  .galeria {
    flex-direction: row;   /* em telas >= 768px, em linha */
  }
}

Leia literalmente: «a partir de 768 px de largura, a galeria fica em linha». Abaixo dessa largura, o estilo base continua valendo (a coluna).

Breakpoints típicos

Um breakpoint é a largura na qual o design muda. Não há valores sagrados, mas estes são comuns:

@media (min-width: 640px)  { /* celular grande / tablet vertical */ }
@media (min-width: 768px)  { /* tablet */ }
@media (min-width: 1024px) { /* notebook */ }
@media (min-width: 1280px) { /* desktop amplo */ }

Dica de especialista: escolha os breakpoints conforme onde seu conteúdo quebra, não conforme modelos concretos de dispositivo. Redimensione a janela e, quando o design começar a ficar ruim, é ali que você coloca o breakpoint.

Por que min-width se encaixa com mobile-first

Com mobile-first usamos min-width (do pequeno para o grande):

A abordagem oposta, max-width (do grande para o pequeno), é desktop-first: você começa pelo desktop e vai recortando. Funciona, mas costuma acabar em mais código e mais exceções. Para a maioria dos projetos, mobile-first + min-width é a opção recomendada.

Coloque isto em prática

O DevPath é um curso prático: aqui você lê a teoria; no app você a coloca em prática com exercícios que rodam de verdade, offline.

Comece grátis no app →
← O problema e a abordagem mobile-firstUnidades e elementos fluidos →