2014-01-29 104 views
1

Fiddle
我有两个Div,一个是在表和其他,在表之外。
我的问题是,正如你所看到的,divOne溢出父代Div之外。
我想告诉喜欢css溢出问题与两个分区

--------------------- 
| ---- ----  | 
| | | | D2 |  | 
| | D1 | | |  | 
| | | ----  | 
| | |    | 
| ----    | 
--------------------- 

这里是我的代码,

HTML

<div class="wrapper"> 
    <textarea rows="12" cols="8" class="divOne"> 
     Division One 
    </textarea>  
    <table> 
     <tr> 
      <td> 
    <textarea rows="6" cols="8" class="divOne">  
    Division Two 
    </textarea>  
      </td> 
     </tr>   
    </table>  
     </div> 

的CSS

.wrapper 
{ 
    border: 1px solid #999999; 
    position: relative; 
    margin: 0px; 
    padding: 10px; 
    width: 600px; 
    background-color: #FCFCFC; 
    min-height: 50px; 
    color: black; 
    border-radius: 8px; 
    -moz-border-radius: 8px; 
    line-height:normal;  
} 

.divOne 
{ 
    float:left;  
} 

回答

2

问题那边是你正在使用浮点数,但你不清除

.wrapper:after { /* Using a clearfix */ 
    display: table; 
    content: ""; 
    clear: both; 
} 

Demo

所以,父母取非的height浮动元素.. 。因此background不增加。

有关floatclear的更多信息,请阅读我的答案herehere

+1

我爱Stackoverflow :) – zey

+0

@zey他他,阅读这些答案,你会得到有关行为的详细信息:) –

+0

是的,我已经给+1了有用的答案,并且谢谢你! – zey

3

http://jsfiddle.net/fNhet/1/

.wrapper { 
    display: inline-block; 
} 
+2

没有违法的答案,但这不是问题的解决方案:)你正在改变父元素的显示属性,这是一个块级别,所以你不应该改变,问题是**未完成浮动** –

1

在你的CSS尝试addding您.wrapper
CSS: -

overflow:hidden; 

DEMO。这将这样的伎俩。

1

使用display: inline-block; overflow: hidden; width: 50% ..这会给你一些额外的效果

1

添加显示:inline-block的;包装div然后你可以得到结果.....