Javascript创建只有一个维度集的img会导致IE中的拉伸



如果我使用下面的代码来设置图像的宽度而不是高度,而不是像Safari和FF那样按比例缩放高度,IE只是显示图像的实际高度,使其拉伸(我的宽度设置是以小于原始大小的尺寸显示图像)。

nImg = document.createElement('img');
nImg.setAttribute("src",'img.jpg');
nImg.setAttribute("width","100");
c.appendChild(nImg);

您不应该指定空高度。如果您只想设置宽度,则添加宽度而不添加高度。如果要保持相同的大小约束,则需要同时设置高度,但不能使用空字符串。

如果省略高度,则默认行为不是保持约束。W3C表示:

始终指定图像的高度和宽度属性。如果设置了高度和宽度,保留了图像所需的空间加载页面时。但是,如果没有这些属性浏览器不知道图像的大小,无法保留适当的空间。效果是页面布局在加载过程中发生更改(在加载图像时)。

最新更新