2012-05-16 32 views
0

好了,我有一個很簡單的堆棧:垂直堆疊,中間部分一樣高,可能

--------- 
| A | 
--------- 
| B | 
--------- 
| C | 
--------- 

兩個AC已經已知的和固定的高度。然而,窗口高度(移動視口)是未知的。我試圖讓B儘可能高。我打算使用overflow-y: auto,所以溢出不是問題。實際問題是將其擴大到一個不知道(但可計算)的價值。

我已經通過計算$(window).height() - ($(A).height + $(C).height())解決了這個問題,但必須有更好的方法(或者jQuery插件)。

回答

2

確保容器具有非static定位,然後進行Bposition: absolute;和設置都topbottom A和C的高度,分別。

例如,如果A分別爲20個像素高,C 40,你對B CSS會是這個樣子:

#b { 
    bottom: 40px; /* Height of C */ 
    left: 0; 
    position: absolute; 
    right: 0; 
    top: 20px; /* Height of A */ 
} 
+0

這就要求包裝爲全高... –

+0

@barraponto:那是問題嗎?全高一般是你如何讓它佔用最多的空間:) – Ryan

+0

像一個魅力的工作:) –