2012-09-14 126 views
0

我有一個容器,它有兩個子div(切換黃色背景來查看它們),這是浮動。我想添加第三個(紅色)低於這兩個,沒有任何浮動,但它延伸通過所有的容器。任何想法爲什麼?非浮動的div旁邊的兩個浮動的div

的jsfiddle:http://jsfiddle.net/RrQff/2/

HTML

<center> 
<div id='container'> 
    <div class="big"></div> 
    <div class="big"></div> 
    <div id='extra'>abc<div>  
<div> 
</center> 

CSS

#container { 

    height:400px; 
    width:400px; 
    background-color:gray; 
} 

.big { 
    height:350px; 
    /* background-color:yellow;*/ 
} 

#container > div:first-child {border-right:1px solid black;} 

#container > div { 
width:199px; 
float:left; 

} 

#extra { 

    background-color:red; 
    width:80% !important; 
    float:none !important; 
    margin-top:20px; 
} 
+1

你不應該使用''

。相反,'邊距:0自動;'中心div。 –

回答

1

添加clear: both;#extra div的CSS,像這樣:

#extra { 
    background-color:red; 
    width:80% !important; 
    float:none !important; 
    margin-top:20px; 
    clear: both; 
} 
0

添加CSS清除:

#extra { 
    clear: both; 
    background-color:red; 
    width:80% !important; 
    float:none !important; 
    margin-top:20px; 
} 

試試這個:http://jsfiddle.net/RrQff/5/

0

更好sollution是使用顯示:所有3周的div或inline-block的:

> #container{ position: relative;} 
> #container .big:first {position: absolute; top: ... left: ...} 
> #container div+div { top: ..left } $container #extra { position: absolute; right: 0; top: 0} } 
0

您需要清除div。試着這樣做:

<center> 
<div id='container'> 
    <div class="big">div one (floated)</div> 
    <div class="big">div two (floated)</div> 
    <div class="clear" style="clear:both" /> 
    <div id='extra'>third div (which i want below floated ones)<div>   
<div> 
</center> 

插入一個明確的:兩個以下兩個DIV浮動的div