2012-09-06 24 views
0

列1(左)用於內容。 Column2(右側/側邊欄)用於相關信息。說佈局是66%/ 34%。如果沒有側邊欄內容,我需要一種方法讓Column1自動伸展到100%。有任何想法嗎。我知道這是可以做到的。我只是不記得如何。CSS佈局(2列布局,但是如果沒有側欄主列必須100%寬)

+---------+---------+ 
| Content | sidebar | 
+---------+---------+ 


+-------------------+ 
|Content/ no-sidebar| 
+-------------------+ 

回答

0

你可能會嘗試這樣的事情。下面是兩種不同的HTML情況:

隨着側邊欄:

<div id="container"> 
    <div id="sidebar">some content</div> 
    <div id="main_content">main content</div> 
</div> 

沒有側邊欄:

<div id="container"> 
    <div id="main_content">main content</div> 
</div> 

這裏是CSS的有條件改變main_content div的大小:

#container { 
    overflow: hidden; 
} 

#sidebar { 
    width: 34%; 
    float: right; 
} 

#main_content { 
    width: 100%; 
    float: left; 
} 
#main_content:nth-child(2) { 
    width: 66%; 
} 
0

您可以設置HTML像;

<div id="container"> 
    <div id="content">content 
     <div id="sidebar">sidebar</div> 
    </div> 
</div> 

和CSS一樣;

#container{ 
    width: 100%; 
} 
#sidebar, #content{ 
    height: 200px; 

} 
#sidebar{ 
    width: 200px; 
    float: left; 
} 
#content{ 
    background: orange; 
} 

您可以用百分比替換pxHere是一個現場演示。

+0

謝謝:))這就是我正在尋找的 –

+0

@ user1147371我知道你是初學者。但在這裏,在計算器中,用戶必須接受工作答案。你可以上傳我的答案(通過點擊箭頭)並接受我的答案(通過點擊打勾圖標) –

+0

內容中的塊元素,但不是在側邊欄混亂了。使用display:inline-block幫助其中的一些但不是全部http://jsfiddle.net/Nkqr3/ –