2011-07-24 82 views
4

我遇到了一個令人困惑的問題,我不太清楚如何解決。我有一個側欄和一個主要區域。側邊欄的寬度爲25%,最大寬度爲350px。其餘由主區域(寬度:自動)佔用。無論用戶滾動多少,邊欄都需要有100%的高度,並始終保持在原來的位置。流體寬度的靜態邊欄

如果我有一個固定寬度的側邊欄,我可以做這樣的事情(demo here):

div#sidebar { 
    width: 350px; 
    position: fixed; 
    top: 0px; 
    left: 0px; 
    height: 100% 
} 

div#main { 
    width: auto; 
    margin-left: 350px; 
} 

然而,因爲我不知道我的側邊欄有多寬將是你,我不會知道要在我的主要內容區域添加多少保證金。

任何想法?

+2

你想'位置:fixed'而不是'位置:static'。 – BoltClock

+0

BoltClock:正確。我的錯。但仍然存在主要問題。 –

回答

4

我認爲這是你在找什麼,請看demo fiddle

CSS:

html, 
body { 
    width: 100%; 
    height: 100%; 
    padding: 0; 
    margin: 0; 
    overflow: hidden; 
} 
#sidebar { 
    float: left; 
    width: 25%; 
    max-width: 350px; 
    height: 100%; 
    overflow: hidden; 
} 
#main { 
    overflow-x: hidden; 
    overflow-y: auto; 
    height: 100%; 
} 

HTML:

<div id="sidebar"> 

</div> 
<div id="main"> 

</div> 
+0

工作很好,謝謝! –

+0

嗯...不幸的是,有一些問題。主要區域的底部的一部分在其變長時切斷。 –

+0

你能編輯我的小提琴來顯示問題嗎?請注意,主div可能沒有邊距和填充。相反,在這種情況下使用額外的元素/ div。 – NGLN