Desempenho · GUIA PRÁTICO

Como configurar sizes para imagens responsivas

Descreva ao navegador quanto espaço a imagem ocupa antes que o arquivo seja escolhido.

O atributo sizes complementa candidatos srcset por largura e deve refletir o CSS real do componente.

Antes de começar

Documente a largura do contêiner nos breakpoints e a margem disponível na página.

Passo a passo

  1. Escreva as condições de tamanho na ordem apropriada e mantenha o valor final coerente com a largura padrão.

Suponha que a imagem ocupe 100vw até 699 px e, em telas maiores, uma coluna de 640 px:

<img
  src="/img/artigo-640.jpg"
  srcset="/img/artigo-320.jpg 320w, /img/artigo-640.jpg 640w, /img/artigo-960.jpg 960w"
  sizes="(max-width: 699px) 100vw, 640px"
  width="960" height="640" alt="Descrição da imagem">

O CSS do exemplo precisa limitar a coluna a 640 px em telas largas e permitir largura fluida abaixo do breakpoint; altere o sizes se o layout real for diferente.

  1. Use DevTools para conferir o candidato baixado em cada viewport, inclusive com pixel ratio diferente.

Limites e cuidados

Um sizes superestimado pode baixar arquivo maior do que a tela precisa. Em DevTools > Network, selecione uma viewport estreita e outra acima do breakpoint, recarregue com cache desativado e confira qual arquivo de srcset foi baixado. O candidato depende também do DPR, cache e condições de rede; verifique que o arquivo cobre a largura CSS × DPR sem enviar variantes enormes à toa.

Continue na biblioteca

Fonte oficial: Imagens responsivas — web.dev.

Continue por aqui