2010-04-22 64 views
1

我有一個問題,我的CSS,2列布局中的右側列擴展到頁腳之外。CSS浮動列延伸到頁腳

我曾嘗試與clear: both;物業打,但我無法得到它的工作.. alt text http://www.blazeware.net/examples/cssFloat/cssProblem.PNG

第二列的ID爲column2兩列使用類column。頁腳html的編號爲footerWrapper

列和頁腳都是div標籤。

我的CSS(有刪節):

.column { 
    width: 49%; 
} 

#column2 { 
    width: 50%; 
    position: absolute; 
    top: 0px; 
    margin-left: 50%; 
    float: left; 
} 

#footerWrapper { 
    background-color: #333333; 
    border-top: 2px #FF6600 solid; 
    color: #666; 
} 

HTML刪節:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
    <link href="style.css" rel="stylesheet" type="text/css" /> 
    </head> 
    <body> 
    <div id="mainColumns"> 
     <div id="mainContainer"><div class="mainWrapper"> 
     <h1>Title</h2> 
    </div> 
    <!-- start panels --> 
    <div class="panels"> 
     <div class="column"> 
     <h2><img src="../lib/icons/newspaper.png" width="16" height="16">Title</h2> 
     <div> 
      <p>content</p> 
     </div> 
     <p></p> 
     <h2><img src="../lib/icons/rainbow.png" width="16" height="16">Title</h2> 
     <div> 
      <p>content</p> 
     </div> 
     <p></p> 
     <h2><img src="../lib/icons/rainbow.png" width="16" height="16">Title</h2> 
     <div> 
      <p>content</p> 
     </div> 
     </div> 
     <div class="column" id="column2"> 
     <h2><img src="../lib/icons/newspaper.png" width="16" height="16">Title</h2> 
     <div> 
      <p>content</p> 
     </div> 
     <p></p> 
     <h2><img src="../lib/icons/rainbow.png" width="16" height="16">Title</h2> 
     <div> 
      <p>content</p> 
     </div> 
     <p></p> 
     <h2><img src="../lib/icons/rainbow.png" width="16" height="16">Title</h2> 
     <div> 
      <p>content</p> 
     </div> 
     </div> 
    </div> 
    <!-- end panels --> 
    <div class="mainWrapper"></p> 
     </div></div> 
     <div id="sideBar"> </div> 
    </div> 
    <div id="footerWrapper"> 
     <div id="footer"> 
     <h6></h6> 
     </div> 
    </div> 
    </body> 
</html> 
+3

我們還需要看一些HTML。 – zneak 2010-04-22 01:08:32

+0

http://css.find-info.ru/css/011/ch05lev1sec4.html – 2010-10-20 02:19:42

回答

3
  • 浮動兩列
  • 刪除位置,頂部和#COLUMN2
  • 利潤率左clearfix CSS添加到您的樣式表
  • 添加 「clearfix」 class to your panels div

Clearfix會導致面板div包住兩列,導致與最長的柱子一樣高。

2

添加overflow: auto您的容器。

+0

謝謝SLaks:這樣做會在容器的右側添加一個滾動條,這並不能真正解決我的問題。有沒有辦法不顯示滾動條? – Darbio 2010-04-22 02:17:10

2

嘗試將clear:both;添加到您的#footerwrapper。或者,您可以手動插入不可見元素以清除浮動元素,例如,在div.panels底部的以下內容:

<div style="clear:both;"></div> 
+0

乾杯湯姆,但這是行不通的 – Darbio 2010-04-22 02:41:17

0

這可能是由於編輯HTML以包含在問題中導致的錯誤,但是您有幾個不匹配的<div>標籤。檢查一下你的原版都可以。

1

在滾動條的情況下,您可以將overflow: hidden添加到您的容器。它會讓您的隱藏內容隱藏起來,儘管最好不要隱藏重要信息。