一般的 DIV + CSS 三栏式排版

一般三栏式的作法如下图所示,我的作法会有几个DIV框架:Top、Container、Left、Content、Right、Footer这几个常态会存在的DIV。 


==================== 
CSS原始码 
==================== 
body{ 
margin:0; padding:0px} (如果你要置中,在Firefox要正常,就要改成margin: 0px auto;) 
  
#DivTop { 
width:1000px; 
} (或者设定百分比) 
  
#DivContainer {} (可以不用设立width,没有设定会预设为100%) 
  
#DivLeft { 
width:200px; float:left; } 
  
#DivRight { 
width:200px; float:right;} 
  
#DivContent { 
margin-left:200px;margin-right:200px;} 
  
#DivFooter { 
clear:both;} 
==================== 
HTML原始码 
==================== 
<div id="DivTop">华山论剑室</div> 
<div id="DivContainer"> 
     <div id="DivLeft">左边是圆</div> 
     <div id="DivRight">右边是方</div> 
     <div id="DivContent">中间方圆并济</div> 
</div> 
<div id="DivFooter">下踩八方</div> 
==================== 
以上的HTML的排列是关键,中间的Container内包了左、中、右三个DIV内容,而左、中、右的原始码在本体HTML中的排列顺序依序是左、右、接下来才是Content 
这是因为我们在左Div与右Div设立了float:left(right)的浮动,因此会IE、Firefox浏灠器会先决定左右的位置后,最后的中间Content再排进来,因为我们设立了margin -left:200px;margin-right:200px;,因此空出了左右的区块宽度。 
  
最后在DivFooter里一定要设定clear:both;的属性,是为了要清掉float的属性,好让footer可以紧接着在最下方正确呈现,若是你没有设立这个属性,嘿嘿...Footer就会给你浮上去,很不听话:P 
  
另外,Firefox对CSS整个场景所设定的height会影响底端的Footer,以及对于padding与margin的判断,IE与Firefox很不一样,因此设定上要小心,这点当你反覆设计较复杂的版型时就会碰到,不过知道这点比较好办了,不外乎是加加减减的算数问题。 
  
还有Firefox不吃text-align: center;这个CSS设定,因此传统的<div align="center">还蛮好用的啦:P,当然,可以解决的方法有很多,就看大家的创意了。

posted @ 2009-05-06 10:32  大洋  阅读(835)  评论(0编辑  收藏  举报