SwiftHTML & CSSSolidityDesenvolvimento de JogosSolana/Rust
21.11.2024

CSS: Padronizando Tamanhos de Imagens

Resposta Rápida

Para padronizar imagens de diferentes alturas e larguras para um único tamanho em CSS, defina parâmetros fixos de largura e altura e aplique a propriedade object-fit. Isso pode ser feito usando as seguintes linhas de código:

.img-tamanho-unico {
  width: 150px;   /* definindo a largura */
  height: 200px;  /* definindo a altura */
  object-fit: cover;  /* mantendo as proporções da imagem */
}

No HTML, aplique esta estrutura:

<img src="imagem.jpg" class="img-tamanho-unico" />

Não se esqueça de inserir o caminho real da sua imagem em vez de imagem.jpg. A propriedade object-fit: cover; ajusta a imagem para se adequar aos tamanhos definidos no CSS, preservando suas proporções.

Aplicando o Conceito de Tamanhos Uniformes

Criando divs Contêineres Consistentes

Criar grades majestosas é bastante facilitado por divs contêineres:

.div-tamanho-unico {
  width: 150px;
  height: 200px;
  overflow: hidden; /* evitar que a imagem transborde para fora do contêiner */
}

.div-tamanho-unico img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
<div class="div-tamanho-unico">
  <img src="imagem.jpg" />
</div>

Esse método evita transbordamentos e garante a estabilidade do seu layout.

Usando um Método de Compressão para Imagens Grandes

Para ajustar o tamanho de imagens grandes sem cortar, utilize uma abordagem diferente:

.img-reduzir {
  max-width: 100%;  /* comprime se a imagem for muito grande */
  height: auto;     /* mantém as proporções */
  object-fit: scale-down; /* evita distorção */
}

Isso garante que as imagens mantenham sua clareza e não obstruam a exibição de elementos menores.

Implementando Tamanhos de Imagem Responsivos

Para um design de web responsivo, é prudente usar unidades relativas:

.img-responsiva {
  width: 20vw;   /* largura depende da largura da janela */
  height: 30vw;  /* altura também ajustada com base na largura da janela */
  object-fit: cover; /* mantém as proporções da imagem */
}

Escolha as unidades relativas com sabedoria para manter as proporções corretas das imagens.

Visualização

Vamos observar um grupo de diferentes quadros contendo imagens de vários tamanhos:

Antes: 🖼️🌄 🖼️🏞️ 🖼️🌆 🖼️🏔️  
Tamanhos:  [5x7] [8x10] [9x12] [7x5]

Após aplicar as técnicas de CSS discutidas, temos:

Depois: 🖼️🌄 🖼️🏞️ 🖼️🌆 🖼️🏔️  
Tamanho uniforme: [100x150] para todos!

Agora todas as imagens se encaixam em quadros do mesmo tamanho, mostrando as capacidades do CSS para criar uniformidade nos tamanhos.

Ampliando a Compreensão de Uniformidade

Centralizando Imagens Dentro dos Contêineres

Para centralizar imagens menores dentro do espaço disponível, use a seguinte abordagem:

.img-centralizada {
  position: relative;
  overflow: hidden; /* restringir a imagem dentro dos limites do contêiner */
}

.img-centralizada img {
  position: absolute;
  top: 50%; /* alinhar verticalmente... */
  left: 50%; /* ...garantir centralização horizontal */
  transform: translate(-50%, -50%); /* ajustar a posição */
}

Esse método garante que as imagens estejam sempre à vista, como exposições em uma vitrine.

Considerando a Importância do Conteúdo

Utilizar object-fit: cover pode levar ao recorte de detalhes importantes da imagem. Para evitar truncar elementos chave, considere o seguinte:

  • Avalie o papel narrativo da imagem
  • Garanta que os elementos principais estejam claramente visíveis
  • Se necessário, opte por object-fit: contain para garantir que toda a imagem esteja visível

Alternativas para object-fit

Alguns navegadores podem não suportar object-fit. Para tais casos, planeje opções alternativas:

.img-legado {
  width: 150px;   /* definir uma largura aceitável */
  height: auto;   /* altura ajustada automaticamente */
}

Use as diretivas @supports para aplicar object-fit onde possível:

@supports (object-fit: cover) {
  .img-legado {
    object-fit: cover; /* "Ativar se suportado!" */
  }
}

Criando uma Exibição Visual Atrativa de Imagens

Busque os seguintes objetivos:

  • Visualizar conteúdo consistente e coeso
  • Garantir clareza de detalhes principais
  • Manter um design equilibrado e esteticamente agradável

Utilize as ferramentas CSS sugeridas para criar a galeria de imagens perfeita de acordo com sua visão.

Recursos Úteis

  1. Caixas de Proporção | CSS-Tricks — Entendendo proporções para manter a forma da imagem.
  2. object-fit - CSS: Folhas de Estilo em Cascata | MDN — Um curso completo sobre gerenciamento de tamanhos de imagem com CSS object-fit.
  3. Imagens Responsivas Feitas Certo: Um Guia Para <picture> e srcset — Smashing Magazine — Recomendações úteis para criar imagens adaptativas.
  4. Um Guia Completo Para Flexbox | CSS-Tricks — Tudo sobre como usar o modelo CSS Flexbox para alinhar imagens.
  5. CSS - Layout em Grid — Como o CSS Grid ajuda a criar galerias de imagens responsivas.
  6. Como Criar uma Galeria de Imagens — Um guia passo a passo para criar uma galeria de imagens.
  7. Imagens para Web Design ResponsivoImagens responsivas como uma ferramenta no design de páginas da web.

Video

Did you like this article? Rate it from 1 to 5:

Thank you for voting!