2012-01-30 96 views
0

我會盡力解釋這一點,因爲我可以;) 基本上,我有一個側邊欄<div id="sidebar"></div>漂浮到左側,並具有固定的位置。我計劃在其後面會包含另一個包含內容的div,但問題是,由於側欄具有固定的位置,因此我期望在其後面(位於右側)的div出現在側邊欄後面。這是一個問題,因爲我需要使用margin-left: 310px(310px是側邊欄的寬度)來使另一個div出現在側邊欄後面,因此,如果不在頁面上佔用100%寬度而沒有側邊欄的310px,它會佔用整個頁面並導致對齊問題。css邊距/對齊問題

這很難解釋,但如果你訪問我的網頁http://freshbeer.lv/development/en/你可以看到白色的div,它具有margin-left: 310px;width: 100%;裏面有一個灰色的分度width:700px;margin: 0 auto;。我期望灰色div在背景中的2張圖像中間對齊,但是由於白色div佔用的空間比需要的更多,所以不會發生。任何人都可以提出解決方案嗎?

+0

你試過添加圖片嗎? – CoffeeRain 2012-01-30 18:35:13

回答

3

也許我誤解了您的問題,但在#container中,您可以刪除width: 100%或將其更改爲width: auto

問題是,它正在獲取父容器的寬度(如果你走得足夠遠,則取回瀏覽器窗口的寬度),然後添加邊距。所以它是100%+ 310px。因此它比瀏覽器窗口寬310px。

1

試試這個。首先,確保你的邊欄是你的腳本中的第一個。然後,不要設置主要部分的寬度。相反,只要說display:block。因此,像這樣:

<html> 
<body> 
<div style="width:310px; float:left; background:#dddddd; height:500px;"></div> 
<div style="margin-left:310px; display:block; background:#ff0000; height:500px;"></div> 
</body> 
</html> 

在上面的例子中,頂格是你的身邊吧,第二你的主體部分。我只是添加了高度,以便在測試期間看到列。