日期:2013-10-13  浏览次数:21748 次

 容器高度100%是经常用到的需求,任何容器都可以实现,而且不需求嵌套关系。

把body看作是一个容器,做为内部对象的上层标签,他的高度设置为100%是关键。

最基本的例子
* { margin:0; padding:0; border:0;}
html,body { height:100%;} /* 同时设置html是为了兼容FF */
#box_2 { height:100%; background:#000;}

Demo http://www.rexsong.com/blog/attachments/200512/23_133414_height100_base.htm

堆叠绝对高度效果
#box_1 { position:absolute; top:0; left:0; width:100%; height:50px; background:#f00; z-index:2;}
#box_2 { position:absolute; left:0; top:0; width:100%; height:100%; background:#000; z-index:1;}

Demo http://www.rexsong.com/blog/attachments/200512/23_114301_height100_1.htm

纵向绝对高度效果
#box_1 { position:absolute; top:0; left:0; width:100%; height:30%; background:#f00; z-index:2;}
#box_2 { position:absolute; left:0; top:30%; width:100%; height:70%; background:#000; z-index:1;}

Demo http://www.rexsong.com/blog/attachments/200512/23_115107_height100_2.htm

横向绝对宽度效果
#box_1 { position:absolute; top:0; left:0; width:40%; height:100%; background:#f00; z-index:2;}
#box_2 { position:absolute; top:0; right:0; width:60%; height:100%; background:#000; z-index:1;}

Demo http://www.rexsong.com/blog/attachments/200512/23_115647_height100_3.htm

这种规划是不需求float的,还可以有很多变化:

1,N列规划
2,N行规划
3,N列加N行交叉规划

值得留意的是在FF下浏览绝对大小容器页面时,调整窗口大小的同时容器大小进行实时调整,而IE只会在窗口调整完毕后才出效果。

IE5.0 / IE5.5 / IE6.0和FF1.5测试通过