在Safari中读取最大宽度:100%和高度:自动的图像高度

时间:2016-02-12 18:15:19

标签: javascript html css safari

如果我将图像附加到DOM并按如下方式记录其高度:

$('body').html('<img src="…" width="100" height="100">');
console.log($('img').height());

声明了以下CSS规则:

img {max-width:100%; height:auto}

Safari在此代码运行后返回高度0,直到几毫秒。省略height:auto表示返回高度,但这会导致图像比例在小容器中失真。

有没有办法强制Safari立即计算高度? Chrome不会遇到这个问题。

Demo - 适用于Chrome,而不适用于Safari 9.0.3

1 个答案:

答案 0 :(得分:0)

尝试使用以下内容:

var img = document.getElementById('id'); 
var height = img.clientHeight;

doc: clientHeight