我試圖做一個簡單的兩個欄佈局,但它似乎比我想象的更難..不能得到兩個欄佈局工作
它需要有:
- 固定寬度300像素左列 它填補了 其餘頁面
- 右列 - 無論 窗口大小
- 兩個欄的div必須接觸頁面的底部
我遇到的問題是第三個要點,如果我使用了浮動,那麼右邊的列總是包裝在左邊的列下,我不能讓它們都與頁面底部齊平!
而且我認爲我需要浮動左列,因爲設置爲100%-300px的權利是不可能的。
任何想法?謝謝!
我試圖做一個簡單的兩個欄佈局,但它似乎比我想象的更難..不能得到兩個欄佈局工作
它需要有:
我遇到的問題是第三個要點,如果我使用了浮動,那麼右邊的列總是包裝在左邊的列下,我不能讓它們都與頁面底部齊平!
而且我認爲我需要浮動左列,因爲設置爲100%-300px的權利是不可能的。
任何想法?謝謝!
試試這個 - 從IE6 +上的作品進行測試。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<style type="text/css">
html, body {height:100%;position:relative;margin:0;padding:0;}
.side {float:left;width:300px;height:100%;background:red;}
.main {margin-left:300px;background:blue;height:100%;}
</style>
</head>
<body>
<div class="side">
side content
</div>
<div class="main">
content
</div>
</body>
</html>
CSS:
#main, * html #left, * html #right { display:inline; height:100% }
#main { display:table }
#left, #right { display:table-cell }
#left { width:300px }
的* html #left
是IE瀏覽器,所以它被強制使用display:inline; height:100%
。 IE似乎不支持display:table-cell
。
HTML:
<div id="main">
<div id="left"></div>
<div id="right"></div>
</div>
在這種情況下,更明顯的是使用id的而不是你的div的類。 – Midas 2011-05-16 15:33:38
當我把文本放入長度超過一頁的.main時,div不會展開並且背景停止。 – 472084 2011-05-16 15:45:04
@Jailagle你沒有具體說明。 YOu可以嘗試人爲列http://line25.com/articles/create-sidebars-of-equal-height-with-faux-columns - 與自定義退出它應該工作。 – easwee 2011-05-17 10:38:49