Так что я работаю на галерее, где изображения показаны в элементе списка 200x200pxПочему не правильно масштабируется высота изображения?
#gallery-list-ui li {
display: block;
margin: 10px;
height: 200px;
width: 200px;
overflow: hidden;
}
Для того, чтобы иметь портрет/пейзаж изображения использовать всю высоту/ширину, я использую JavaScript, чтобы решить, если я должен установить либо высоту, либо ширину до 100%.
var portrait = ($img.height() > $img.width() ? true : false);
if(portrait){
$img.css({'width' :'100%', 'height' : 'auto'});
} else {
$img.css({'height' :'100%', 'width' : 'auto'});
}
В результате, портретные изображения весы правильно
<img src="img.jpg" style="width: 100%; height: auto;">
но ландшафтные изображения масштабируется 100% своей первоначальной высоты и не ограничивается высотой списка.
<img src="img.jpg" style="height: 100%; width: auto;">
Что я здесь отсутствует? Может ли кто-нибудь объяснить, почему это происходит? Смотрите мою скрипка здесь: https://jsfiddle.net/smyhbckx/5/
Похоже, что ваш родительский контейнер 'img' не имеет определенного' height' и поэтому не будет останавливать 'img' от полного экрана' height', но 'width' работает, даже если он не установлен, как 'div' по умолчанию 100%. – LGSon