2013-04-10 19 views
0

在一个容器中你可以以任何方式位置两个块彼此之上(例如绝对),并使容器扩大到最大的尺寸/高度?扩大到最大的“定位”块?

如果使用position: absolute容器不膨胀到定位元件的尺寸。

有没有什么办法让用CSS这样的效果?


说明性(停止活动)例如:

<div class="wrap"> 
    <div class="foo">foo</div> 
    <div class="bar">bar</div> 
</div> 

CSS:

.wrap{ 
    position: relative; 
} 
.foo{ 
    height: 40px; 
} 
.bar{ 
    height: 60px; 
    width: 100%; 
    position: absolute; 
    top: 0; 
    left: 0; 
} 

的jsfiddle:http://jsfiddle.net/qjFR9/

我想定位.bar超过.foo(位置.bar好像没有.foo)和.wrap应该是最大的孩子的身高。

+0

对不起,您的解释不清楚。任何示例或截图解释这种情况可能会有帮助。 – 2013-04-10 05:17:19

+1

我不认为''position:absolute'的工作原理对于纯CSS来说是可行的 - 对于JS来说很简单,但是您是否有用例? – 2013-04-10 05:22:32

回答

0

如果容器的宽度是固定的溶液中这样工作的:

<div class="wrap"> 
    <div class="foo"><div class="inner">foo</div></div> 
    <div class="bar"><div class="inner">bar</div></div> 
</div> 

CSS:

.wrap{ 
    overflow: auto; 
} 
.wrap, 
.wrap .inner{ 
    width: 300px; 
} 
.wrap > div{ 
    float: left; 
    width: 0; 
} 

/* test: .wrap expands to fit the .inner content */ 
.bar > .inner{ 
    height: 60px; 
} 

jsFiddle demo

但这不适用于非固定宽度的包装。

有没有更好的方法?