我正在尝试显示一些带有HTML img标签的大图像。此刻,它们离开了屏幕的边缘。如何缩放它们以使其停留在浏览器窗口中?
还是在不可能的情况下,至少可以说“以其正常宽度和高度的50%显示此图像”?
width和height属性使图像变形-据我所知,这是因为它们引用了容器最终可能具有的任何属性,而这些属性与图像无关。我无法指定像素,因为我必须处理大量具有不同像素大小的图像集合。最大宽度无效。
我正在尝试显示一些带有HTML img标签的大图像。此刻,它们离开了屏幕的边缘。如何缩放它们以使其停留在浏览器窗口中?
还是在不可能的情况下,至少可以说“以其正常宽度和高度的50%显示此图像”?
width和height属性使图像变形-据我所知,这是因为它们引用了容器最终可能具有的任何属性,而这些属性与图像无关。我无法指定像素,因为我必须处理大量具有不同像素大小的图像集合。最大宽度无效。
Answers:
仅设置width
或height
,它将自动缩放其他。是的,您可以使用一个百分比。
第一部分可以完成,但是需要JavaScript,因此可能不适用于所有用户。
CSS足够了:
width : desired_width;
height: auto;/*to preserve the aspect ratio of the image*/
IE6 Internet Explorer 6
百分比仅适用于元素的宽度,但height:100%;
没有正确的代码则无法使用。
的CSS
html, body { height:100%; }
然后,使用百分比可以正常工作,并根据窗口调整大小动态更新。
<img src="image.jpg" style="height:80%;">
您不需要width属性,宽度会随着浏览器窗口大小的改变而按比例缩放。
而且,如果图像按比例放大,则不会出现(过度)块状(插值)的情况。
img { -ms-interpolation-mode: bicubic; }
添加max-width: 100%;
到img
标签对我有用。