position:绝对导致元素消失

时间:2012-11-12 16:38:35

标签: javascript html css

我想知道是否有办法解决我遇到的这个问题。

我有三个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时,它会导致父元素和子元素消失。有没有办法将子设置为绝对,并使父容器的高度更改为适合孩子的身高?

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

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

3 个答案:

答案 0 :(得分:2)

您的HTML不使用holdme类,而您的小提琴并未导入jQuery。 Correcting both of these makes it work fine

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

答案 1 :(得分:2)

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

那应该是.chlid吗?

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

如果您进行此更改,它可以正常工作..

http://jsfiddle.net/gaby/dHt7L/8/

演示

答案 2 :(得分:1)

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

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

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

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