请问JS怎么获取隐藏div的高度,div设置为display=“none”。谢谢

如题所述

先把它display='block',然后再取高度,再display='none';
如果最初DIV的display就是none的话,浏览器是不会渲染该对象的,换句话说,浏览器并没有解析里面的内容,所以浏览器自己也不知道该DIV的高.
请采纳答案,支持我一下。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-11-26
<html xmlns="

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<div id="testDiv" style="display:none;height:200px">test</div>
</body>
<script>
var testDiv=document.getElementById("testDiv");

if(testDiv){
testDiv.style.display="none";
console.log(testDiv.style.height);
}
</script>
</html>

追问

就是获取不到隐藏div里面的高度

追答

你这个直接display了,加载的时候没渲染,就不占位了,取不到高度,你要用visibility,改为这样就可以了

<div id="p2" style="visibility:hidden">

你两个属性应该是没区分开

追问

如何设置了 style="visibility:hidden"是可以了。但是怎么把它显示出来啊

追答

js控制
document.getElementById('p2').style.visibility="visible";

本回答被提问者采纳