Div高度不一样后设置相等的高度与javascript

Div heights not the same after setting equal heights with javascript

本文关键字:高度 javascript 设置 不一样 Div      更新时间:2023-09-26

我有两个div,我想让它们的长度相等。Div1的文本决定了它的高度。Div2是一个滚动框,它的表观高度应该与div1相同。下面的代码

    <script>
    var div1Height = ((document.getElementById('div1').offsetHeight) + 'px');
    document.getElementById('div2').style.height = div1Height;
    </script>

使div2具有与div1几乎相同的高度,但不完全相同。我怀疑在脚本运行后应用了一些填充或边距,但在删除所有这些之后,两个高度仍然不匹配。有办法解决这个问题吗?

你在用两种不同的方法测量身高。在div1中使用offsetHeight,在div2中使用style.height.

改变
var div1Height = ((document.getElementById('div1').offsetHeight) + 'px');

var div1Height = ((document.getElementById('div1').style.height) + 'px');

那么你会得到相同的值,因为你使用相同的测量方法。

请注意,您已经在div1上设置了style="height:[x] px;"Height从元素的style-attribute中检索(Height)信息。

我不知道你为什么在javascript中这样做。你可能有你的理由,但纯css几乎肯定也会工作(当然取决于你想要达到的效果)