Imagens responsivas CSS
Media queries remodelaram o layout quando o viewport muda. Imagens são outro ponto de stress: um ficheiro de 4000px numa coluna estreita transborda, gasta banda ou faz a página saltar ao carregar. Esta lição cobre CSS fluido, reservar espaço e fontes mais inteligentes — sem repetir a sintaxe @media da sessão anterior.
Kit de imagens responsivas
📊 Imagens responsivas num relance
| Peça | Trabalho do dia a dia |
|---|---|
max-width: 100% + height: auto |
A imagem encolhe na coluna; mantém proporção |
width / height no <img> ou aspect-ratio em CSS |
Reserva espaço; menos CLS |
srcset + sizes |
O browser escolhe largura de ficheiro perto do render |
<picture> + <source media> |
Art direction — crop ou asset por condição |
object-fit + caixa fixa |
Recorte ou letterbox em moldura conhecida (lição Object Fit) |
| Media queries no layout | Movem colunas e nav — imagem segue largura do slot |
Duas camadas: largura de layout e comportamento da imagem. Corrija overflow com CSS; adicione srcset quando o mesmo visual precisa de ficheiros menores no telemóvel.
Imagem fluida — max-width e height: auto
.article img {
max-width: 100%;
height: auto;
display: block;
}
Evite só width: 100% em imagens enormes sem max-width. Combine regras fluidas com srcset.
Reservar espaço — aspect-ratio
.hero__photo {
width: 100%;
aspect-ratio: 16 / 9;
object-fit: cover;
display: block;
}
Para fotos de conteúdo completas, prefira max-width fluido. aspect-ratio + cover quando o design exige moldura fixa.
Resolução — srcset e sizes
<img
src="photo-800.jpg"
srcset="photo-400.jpg 400w, photo-800.jpg 800w, photo-1200.jpg 1200w"
sizes="(min-width: 48rem) 640px, 100vw"
alt="Team at a whiteboard"
width="800"
height="450"
/>
sizes honesto conforme o CSS real.
Art direction com <picture>
<picture>
<source media="(max-width: 40rem)" srcset="hero-portrait.jpg" />
<source media="(min-width: 41rem)" srcset="hero-landscape.jpg" />
<img src="hero-landscape.jpg" alt="City skyline at dusk" width="1200" height="675" />
</picture>
picture para art direction, não cinquenta breakpoints duplicados.
Molduras fixas — lembrete object-fit
.card__thumb {
width: 100%;
height: 12rem;
object-fit: cover;
display: block;
}
Queries mudam colunas; imagens herdam largura do slot. Atualize sizes nos breakpoints.
Experimente
<img>largo —max-width: 100%,height: auto.aspect-rationo hero.srcsetcom três larguras.<picture>com dois crops.- thumb fixa com
cover.
Erros comuns
srcenorme semsrcsetwidth: 100%semheight: autosizeserradoobject-fitsem caixa- repetir
@mediaaqui
Resumo
- CSS fluido mantém imagens nas colunas
aspect-ratioreduz saltosrcset/sizespara ficheiro;<picture>para art directionobject-fitpara molduras fixas- Seguinte: Breakpoints
🧠 Teste Seu Conhecimento
Teste Seu Conhecimento
Desafie-se com este questionário interativo e veja o quão bem você entende o tópico
📝 Instruções
- Leia cada pergunta cuidadosamente
- Selecione a melhor resposta para cada pergunta
- Você pode refazer o quiz quantas vezes quiser
- Seu progresso será mostrado no topo