专家答疑 不用float如何实现DIV模块居中布局?

这里向大家描述一下不用float如何实现DIV模块居中布局,这里重点向大家描述两种方法,相信本文介绍一定会让你有所收获。

不用float实现DIV模块居中布局

最常见的DIV+CSS网页布局形式:上、中左、中右、底四个模块,宽度760px,整体页面居中。

结构代码,topleftrightfoot四个模块全部独立、互不嵌套。

ExampleSourceCode 

 
 
 
  1. divid="top">head</div>  
  2.  
  3. divid="left">  
  4. divid="left_module">left</div>  
  5. </div>  
  6.  
  7. divid="right">  
  8. divid="right_module">right</div>  
  9. </div>  
  10.  
  11. divid="foot">foot</div>  
  12.  

顶部属于常规定义。

 
 
 
  1. #top{height:100px;background:#ccc;  
  2.  
  3. width:760px;margin:auto;text-align:center;}  
  4.  

方法A:

外层left定义为760px宽并居中;内层left_module定义为实际的左侧宽度280px,且绝对定位,top值等于顶部定义的高度。
这种方法的好处是:leftright两个模块代码片断可以互换调整显示优先级。

 
 
 
  1. #left{width:760px;margin:auto;}  
  2.  
  3. #left_module{width:280px;position:absolute;  
  4.  
  5. top:100px;padding:10px;}  
  6.  

 方法B:

外层left定义为760px宽并居中,相对浮动于top;内层left_module定义为实际的左侧宽度280px,且绝对定位。
这种方法的好处是:顶部的高度可以自由延伸。

 
 
 
  1. #left{width:760px;margin:auto;position:relative;}  
  2.  
  3. #left_module{width:280px;position:absolute;padding:10px;}  
  4.  

外层right定义为760px宽并居中,内层right_module定义为实际的右侧宽度440px,使用margin语法居左。right_module定义的背景色是实际右侧的背景色,定义的高度就是实际中间模块的高度;right的背景色就是实际左侧的背景色。

 
 
 
  1. #right{width:760px;margin:auto;background:#E8E8E8;}  
  2.  
  3. #right_module{width:440px;background:#F0F0F0;  
  4.  
  5. height:360px;margin:000auto;padding:10px;}  
  6.  

底部也属于常规定义。

 
 
 
  1. #foot{height:100px;background:#ccc;width:760px;  
  2.  
  3. margin:auto;text-align:center;}  
  4.  

测试环境IE6.0和FF1.5,都是最俗的语法,非常简单,实用有限,可做技术参考。

【编辑推荐】

  1. CSS浮动float属性用法详解
  2. DIV+CSS创建固定宽度布局
  3. CSS2.0中最常用的十八般兵器
  4. CSS布局中DIV为空时在IE6下的不同表现
  5. 解读CSS中position属性四大可选值用法
THE END