2011-11-07 118 views
1

我有幾個列表元素,並在那裏我有2個div的浮動左。我希望當第二個div得到更多的內容,div留給它自動獲得相同的高度。我如何得到一個高達一個權利的股利

我有兩個div在不同的顏色,所以當1有較少的內容,那麼另一個,div得到更高的和bg不配合horizo​​ntaly。

Maby您可以在網站上快速瀏覽一下,那麼您確切地知道我的意思, http://newsbreak.vazcreations.nl(頂部中間容器是問題)。

在此先感謝

回答

2

這個問題可以很容易地解決沒有javascript。建議您不要使用JavaScript來實現某些功能,因爲並非所有用戶都啓用了JavaScript。

被用來解決您的問題,不使用JavaScript技術,被稱爲Faux Columns(本文更進了一步,並使用圖像,但你並不需要。

基本上你放在DIV上右邊的裏面的左邊的div,將左邊div的寬度設置爲兩個div的理想總寬度,然後將右邊的div浮動到右邊,你可能需要在左邊div應用clearfix,這樣才能正確環繞的第二個div

編輯:我剛剛遇到0其中提出了幾個似乎值得研究的其他解決方案。

+0

奧克,我想你的解決方案是最好的,謝謝。但我不知道它是我還是它不起作用。 –

+0

您遇到的問題是什麼? –

+0

我是新來的clearfix,所以不知道如何工作。那麼我應該重寫我的代碼還是可以繼續使用它?我現在用李作爲父母。 –

-1

使用jQuery:

var div_1_height = $('.div-1').height(); 
$('.div-2).height(div_1_height); 
+0

的Javascript應該是最後的上邊距採取;這個問題有一系列解決方案可以使用,而不是使用JavaScript。 –

1

我覺得這樣的事情應該工作:

編輯:這可能是一個更好的解決方案

<style type="text/css"> 
#container {  
    display:table;  
    border-collapse:collapse;  
}   
#layout {  
    display:table-row;  
}   
#left-sidebar, #right-sidebar, #content {  
    text-align:left; 
    display:table-cell;  
}   
</style> 

<div id="container">  
    <div id="layout">  
     <div id="left-sidebar">  
      <!-- left sidebar--> 
     </div>  
     <div id="content"> 
      <!-- content --> 
     </div> 
     <div id="right-sidebar">  
      <!-- right sidebar -->  
     </div>  
    </div> 
</div> 

看到這個jsFiddle的演示: http://jsfiddle.net/Qhk7R/

+0

奧克感謝兄弟,我現在將嘗試在我的設計上。只要弄清楚如何在編碼上得到它。 –

+0

該解決方案應該可以工作。 –

0

你可以僞造它更改此:

.recent-item { 
    height: 50px; 
    list-style: none; 
    float: left; 
} 

.recent-item { 
    height: 50px; 
    list-style: none; 
    float: left; 
    background-color: #CDCDCD; 
    margin-top: 5px; 
} 

,並消除對。主要更新和.recent-bericht