我写了一个脚本来调整div的大小,相对于另一个div的高度加上70px(这是边距的大小(顶部和底部))并将其加载到window.onload函数中。
<script language="JavaScript">
function tamanho_wrapper2(){
var mydiv = document.getElementById("topicos");
var current_height = parseInt(mydiv.offsetHeight);
var wrapper2 = document.getElementById("wrapper2");
wrapper2.style.height = current_height+70+"px";
}
</script>
它正在使用firefox,div正是我想要它的方式。 但是在chrome上,在第一页的加载中,它包括我获得高度的div高度的底部和顶部边距的大小,所以div比我想要的要大。奇怪的是,当重新加载页面时,chrome只计算div的自身高度,就像firefox一样。它已经发生在你身上吗?
编辑:嗯,我最终得出的结论是,这是一个古老的事实:浏览器的引擎工作不同,发生在我身上的是一个证据。感谢您的关注。
Edit2:奇怪的是,浏览器的奇怪行为已经停止发生。
答案 0 :(得分:3)
尝试重置样式表(上面的链接)。所有浏览器都为每个元素都有自己的默认样式,也许Chrome会将它添加到你的div中,其他浏览器也可能以不同的方式显示它。
http://meyerweb.com/eric/tools/css/reset/
PS:对不起,我的英语有时更糟:P
答案 1 :(得分:0)
我不确定为什么你的javascript在Chrome中不起作用,它看起来对我而言。你尝试过使用jquery吗?我刚刚测试了这款i chrome并没有任何不良影响。我希望它有所帮助:)
<div id="div1" style="background-color:#ff0000; height:50px; width:10px; float:left;"></div>
<div id="div2" style="background-color:#00ff00; height:150px; width:10px; float:left;"></div>
<input type="button" value="resize" onclick="resizeDiv();" />
然后这个jquery代码:
function resizeDiv(){
$('#div1').css('height', $('#div2').css('height'));
}