style="display"之后不能获取offsetHeight或clientWidth这类测量的值

Posted soft.push("zzq")

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了style="display"之后不能获取offsetHeight或clientWidth这类测量的值相关的知识,希望对你有一定的参考价值。

  如果在html元素中设置了style="display:none;height:90px;"的属性后,是无法获得offsetLeft ,offsetWidth,offsetTop,offsetHeight以及兼容性更好的clientHeight,clientHeight等(client..属性会比offset大些,因为可能包含边框或滚动条)这类测量的值,因为一旦display:none之后浏览器没有渲染也就不会去测量。但你可以得到style中的height:90px;还有你在style设置的其他css属性值。

以上是关于style="display"之后不能获取offsetHeight或clientWidth这类测量的值的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 jQuery 将 `style=display:"block"` 添加到元素中?

style="visibility: hidden"和 style=“display:none”之间的区别

style="display:none" 的 CSS 替代品

移除 style="display:none;" 时的 CSS 高度过渡

js 代码document.getElementById(1).style.display ="none"; 之后不能获取定义的数值

style="display"之后不能获取offsetHeight或clientWidth这类测量的值