Estou usando uma tag img de HTML para mostrar uma foto em nosso aplicativo. Eu configurei o atributo height e width para 64. Preciso mostrar qualquer resolução de imagem (por exemplo, 256x256, 1024x768, 500x400, 205x246 etc.) como 64x64. Porém, ao definir os atributos de altura e largura de uma tag img para 64, não é possível manter a proporção, para que a imagem pareça distorcida.
Para sua referência, meu código exato é:
<img src="Runtime Path to photo" border="1" height="64" width="64">
Respostas:
Não defina altura e largura. Use um ou outro e a proporção correta será mantida.
fonte
aqui está o exemplo
fonte
Defina
width
eheight
das imagens paraauto
, mas limite ambosmax-width
emax-height
:Violino
Se você deseja exibir imagens de tamanho arbitrário nos "quadros" de 64x64px, pode usar invólucros de bloco embutido e posicionamento para eles, como neste violino .
fonte
fonte
width
eheight
paraauto
.Nenhum dos métodos listados dimensiona a imagem para o maior tamanho possível que cabe em uma caixa, mantendo a proporção desejada.
Isso não pode ser feito com a tag IMG (pelo menos não sem um pouco de JavaScript), mas pode ser feito da seguinte maneira:
fonte
style="background: url('_'); background-size: cover width:_px height:_px"
para a<img>
tag.cover
nãocontain
de forma a maximizar o tamanho da imagem para o maior possível.contain
leva a "letterboxing".Use o
object-fit: contain
atributo in em css do htmlimg
.fonte
Embrulhe a imagem em um
div
com as dimensões 64x64 e definawidth: inherit
a imagem:fonte
Por que você não usa um arquivo CSS separado para manter a altura e a largura da imagem que deseja exibir? Dessa forma, você pode fornecer a largura e a altura necessariamente.
por exemplo:
fonte
Tente o seguinte:
Adicionar ajuste de objeto = "capa" forçará a imagem a ocupar o espaço sem perder a proporção.
fonte