0

我想知道是否有任何方法可以解决我遇到的这个问题。

我有三个 div,相互嵌套

<div class="section">
<div class="parent">
<div class="child">
Some text.. blah blah. 
</div>
</div>
</div>

我用这个javascript让父母的身高由孩子的身高决定:

  $(document).ready(function() {
            var $holdme = $(".holdme");
           $holdme.parent().height($holdme.outerHeight());
        });

但是,这仅在子元素未绝对定位时才有效。当我将 .child 设置为 position:absolute 时,它​​会导致父元素和子元素消失。有没有办法将孩子设置为绝对并让父容器的高度改变以适应孩子的高度?

这是一个小提琴......现在它工作正常,但没有为子元素设置绝对定位。从 position:absolute 周围删除评论标记会破坏一切。

http://jsfiddle.net/jjalbert/dHt7L/3/

4

3 回答 3

2

您的 HTML 不使用holdme该类,并且您的小提琴没有导入 jQuery。纠正这两个使它工作正常

    $(document).ready(function() {
         var $holdme = $(".child");
        $holdme.parent().height($holdme.outerHeight());
     });
于 2012-11-12T16:43:36.380 回答
2

任何地方都没有.holdme应用类...

应该是这样.chlid吗?

var $holdme = $(".child");

如果您进行此更改,它会按您的意愿工作。

演示在http://jsfiddle.net/gaby/dHt7L/8/

于 2012-11-12T16:43:41.790 回答
1

这是一个工作版本的小提琴:

http://jsfiddle.net/dHt7L/10/

    $(document).ready(function() {
         var $holdme = $(".child");
        $holdme.parent().height($holdme.outerHeight());
     });

​</p>

我删除了你的溢出:规则..不确定它是否重要,但它是我工作流程的一部分

于 2012-11-12T16:45:40.783 回答