2012-03-19 188 views
0

容器基於溶液我有情況一樣在下面的示例中(參見鉻): http://jsfiddle.net/3fLP6/49/股利和CSS用於與固定/不固定的高度

存在與一些內容的div行和一分度可變含量應填補可用高度的其餘部分。一切工作正常在Chrome/Firefox/Safari/Android/iOS中,但我無法找到解決方案的IE瀏覽器(我需要解決方案的IE7 +)有什麼其他方式來實現這一點在IE瀏覽器?

+0

不可能通過CSS只 – Starx 2012-03-19 19:29:30

+0

嗯,有可能在Chrome和其他現代的瀏覽器,這就是爲什麼我認爲這應該是某種形式的解決方案爲IE – Irek 2012-03-19 19:46:58

+0

@Irek什麼以前的經驗會使你那愚蠢的想法? ;-) – Blazemonger 2012-03-19 20:01:56

回答

0

我假定你的意思是你希望頁眉總是坐在上面,總是位於底部的一個頁腳,而且充滿可用空間的其餘一個DIV;不管它的內容有多大或多少。我在我的答案的其餘部分使用這些術語。

嗯,有我的知識三種方法在IE7 +做到這一點:

  1. 使用position: fixed CSS屬性來定位頁眉,頁腳和身體。這意味着您必須將標題設置爲0像素的頂部位置,並將頁腳設置爲0像素的底部位置。此外,您必須將主體div的頂部和底部屬性分別設置爲頁眉和頁腳的高度。因此,此方法要求您知道標題和頁腳的確切高度。不幸的是,一些老的瀏覽器(例如IE6)不支持position: fixed,因此,如果對這些瀏覽器的支持是很重要的,你應該與其他選項一氣呵成;
  2. 使用百分比指定所有div的高度的。顯然,這很容易。但是,如果要爲頁眉和頁腳設置特定的高度,那是不可能的;
  3. 也可以創建一個div寬度的100%的高度,其將充當身體div。最重要的是你使用position: absolute定位頁眉和頁腳div的(正因爲如此,這也將努力在舊的瀏覽器)。然後,您添加到body元素另外兩個要素:一個div頂部和一個div在底部。這些div必須分別與頁眉和頁腳高度相同,因爲這兩個元素將確保在必要時顯示滾動條。當然,您需要在主體div上設置overflow: auto;
  4. 最後,還可以在調整窗口大小時使用JavaScript更改主體高度div。這種方法的一大缺點是JavaScript是必需的,因此這不是我的選擇。

我希望我能幫上忙。如果我不清楚,請詢問任何問題(足夠)。