如何使用JQuery调整父容器(比如DIV)的高度

时间:2009-11-05 16:31:19

标签: jquery

我正在努力实现以下目标(我是JQuery的新蜜蜂)。

我希望有一个父容器(比如DIV)在其任何(或全部)子控件调整大小时自动增加其高度。 DIV可以包含内联和绝对定位的元素(甚至相对)。

换句话说,容器应该随时自动扩展其高度以包括其所有子项。

我对CSS黑客(以及“clearfix”)感到沮丧,并且想要使用JQuery(看起来比CSS更有前景)。

如何使用JQuery实现这一目标。

2 个答案:

答案 0 :(得分:0)

这是一个特殊的问题,因为你问的是一件事,但你提到的二级解决方案表明你实际上是在试图解决另一个问题。

父div应该自然地扩展以适应其包含的元素,如果它们不是它通常表明其他东西出错了 - 在你的情况下,当你提到'clearfix'时它暗示你正在使用{{1在父母内部并且它不再延伸过它的孩子了。

这听起来对吗?如果是这样,那么你可能会发现溢出方法比尝试用jquery做这样的事情更有用。

见这里:clearing floats with overflow

答案 1 :(得分:0)

您始终可以使用ready函数通过使用'css'高度来更改div的高度。像这样:

             $(document).ready(function() {
             var $optionDiv = $('#optiondiv');
             var $subtable = $('#subtable');
              $subtable.css('height', $optionDiv.height());
            Page.init();
        });
上面示例中的

子表在页面上呈现后获取optiondiv的高度。

Page.init()方法使用之前使用我们的函数更改的值再次呈现页面。 想象一下,你使用ready函数调用你的方法来确定你要检查的元素的确切尺寸,更改值然后再次渲染div。