没有固定的正确高度.如果我在css中设置固定高度,则在响应式布局中,图像将不会以正确的宽高比调整大小.
主要问题是css根据src-attribute设置的图像计算自动高度和宽高比,而不是width-和height-attribute.因此,如果有一个有宽度和高度的真实图像,一切正常.但是如果有一个空白(这只是一个拉伸的1×1图像),宽高比将无法正确计算,因为html设置的宽度和高度对css计算没有影响(但是没有css的浏览器如何显示-calculation).
我想到的一件事是只为“真实图像”设置“height:auto”,并在每个窗口调整大小时通过jquery计算“空白图像”的高度:
Testimg {
max-width: 100%;
}
.lazy-loaded {
height: auto;
}
$(document).ready(function(){
resizeBlankImages();
});
$(window).resize(function(){
resizeBlankImages();
});
function resizeBlankImages() {
$(".lazy-blank").each(function () {
var originalWidth = $(this).attr('width');
var originalHeight = $(this).attr('height');
var ratio = originalWidth/originalHeight;
var width = $(this).width();
var height = width/ratio;
$(this).height(height);
});
}
它可以工作,但在包含许多图像的页面上可能会非常麻烦.还有其他想法吗?