2013-06-12 72 views
0

我有一个div与另一个div里面。第二个divwidth,heightbackground-color: green。这个有绝对的位置,所以它的容器没有显示。溢出位置绝对

<div id="root"> 

<div id="r1"> 

    <div id="r2"> 

    </div> 
</div> 
Mas 
</div> 

CSS文件

#root{ 
width:300px; 
background-color: red; 
} 

#r1{ 

position: relative; 
width: 100px; 
background: yellow; 

} 

#r2{ 
position: absolute; 
display: inline-block; 
width: 50px; 
height: 50px; 
left: 0; 
background-color: green; 
} 

http://jsfiddle.net/sev2E/1/

我想知道,如果有可能,它的容器是,敷用绝对位置的股利。

我想看到类似的东西,但没有使用相对位置,也没有为其容器添加高度。

http://jsfiddle.net/sev2E/2/

谢谢!

+0

请在您的问题中包含相关代码。 – hjpotter92

+0

当你将div声明为绝对时,它不包含在父标签中。所以包装不能按需要完成。 – Narendra

+0

'没有使用相对位置并且没有增加高度?任何原因 ? – zey

回答

2

一些高度添加到您的R1 CSS

#r1{ 

    position: relative; 
    width: 100px; 
    background: yellow; 
    height:60px; 

或增加填充底: “你的高度DIV的”,这是相同的

#r1{ 

    position: relative; 
    width: 100px; 
    background: yellow; 
    padding-bottom:55px 

} 
+0

我想知道如果我可以做到这一点,而不增加高度到它的容器...我更新我的问题,我说这个。感谢您的回答! – Bae

+0

我认为通过给你的对象的位置绝对,你让你的div类“空”,这就是为什么它获得高度0 – Pumpkinpro

+0

谢谢!!!!!!!!! – Bae

1

简短的答案是否定的。

一旦你绝对定位一个元素,它将被从文档流中取出,并且不再计算其包含块的高度或宽度。

Android API(用Java编写)使用的文本格式模型与CSS兼容的现代浏览器实现的不同。

要在基于CSS的网页和Android界面布局之间获得类似的视觉效果,您需要根据每种语言的规则和约束对每个实现进行编码。

Pumpkinpro的答案基本上是在CSS中获得“wrap_content”效果的方法。

+0

谢谢!那么...我将不得不改变我的Java代码来使用CSS模型,而不是android模型T_T – Bae