自適應高度的問題,採用 Div + CSS 進行三列或二列布局時,由於事先不知道具體高度,只能根據內容的增減自適應高度,很多情況下要求兩列(或三列)Div的高度相同,以前用 Table 很容易實現,但採用 Div + CSS 就顯得比較麻煩了。一般的做法,大都採用背景圖填充或 JS 指令碼控制的方法使各Div高度相同,這裡看到一個解決方案,記錄如下:
它主要是採用“隱藏容器溢出”和“正內補丁”和“負外補丁”結合方式,範例程式碼如下:
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Div + CSS Example, Wayhome's Blog</title>
<style type="text/css">
<!--
#wrap{overflow:hidden;}
#sidebar_left,#sidebar_right{padding-bottom:100000px;margin-bottom:-100000px;}
-->
</style></head>
<body>
<div id="wrap" style="width:300px; background:#FFFF00;">
<div id="sidebar_left" style="float:left;width:100px; background:#FF0000;">Left</div>
<div id="sidebar_mid" style="float:left;width:100px; background:#666;">
Middle<br />
Middle<br />
Middle<br />
Middle<br />
Middle<br />
Middle<br />
Middle<br />
Middle<br />
Middle<br />
</div>
<div id="sidebar_right" style="float:right;width:100px; background:#0000FF;">Right</div>
</div>
</body>
</html>