【发布时间】:2008-11-25 14:15:34
【问题描述】:
我有一个容器元素,我需要在其内容更改时调整它的大小。它包含 2 个绝对定位的 div,它们都可以改变高度。如果我没有指定容器的高度,那么容器之后的任何内容都会消失在内容之下。
目前我正在执行以下操作,但我很乐意找到一个不那么费力的替代方案:
(容器有 position:relative,#main 和 #sidebar 是 position:absolute,#sidebar 的内容没有指定定位)
css:
div#mapcontainer { position:relative; width:100%; height: 600px; }
div#main { position:absolute; top: 0; left: 10px; width: 500px; height: 400px; }
div#sidebar { position:absolute; top:10px; right:10px; width: 155px; height: 405px;}
html:
<div id="container">
<div id="main">variable height content here</div>
<div id="sidebar">
<div id="foo">...</div>
<div id="bar">....</div>
...
</div>
<div>
js:
fixHeights = function() {
var children_height = 0;
$('#sidebar'). children().each(function(){children_height += $(this).height();});
$('#container').height(Math.max(children_height, $('#main').height()));
};
【问题讨论】:
标签: javascript jquery dom