捌玖网络工作室's Archiver

admin 发表于 2007-12-8 11:15

CSS floats创建三栏网页布局

三栏布局是目前最常见的网页布局,主要页内容放在中间一栏,边上的两栏放置导航链接之类的内容。基本布局一般是标题之下放置三栏,三栏占据整个页面的宽度,最后在页的底端放置页脚,页脚也占据整个页面宽度。Qh$ql:A6Ph
  
b%I#KVR s   绝大多数网页设计者都熟悉传统的网页设计技术,用这些技术可以生成带有表格、创建固定宽度布局或者“液态”(它可以根据用户浏览器窗口宽度自动伸缩)布局的网页。"e~${3G\H-F+x7pg
  现在,我们都开始抛弃基于表格的布局技术,许多网络设计者正在从XHTML标记和CSS格式这一新范例中寻找创建三栏布局的方法。用绝对定位的方法从 CSS中得到固定宽度的布局并不困难;但是得到液态布局就有点困难了。因此,本文介绍一种用CSS的float和clear属性来获得三栏液态布局的方法。
4xdy H\!H   [b]基本方法[/b]
*P%t:h3t,nZ/m E&r7S2vq
  基本的布局包含五个div,即标题、页脚和三栏。标题和页脚占据整个页宽。左栏div和右栏div都是固定宽度的,并且用float属性来把它们挤压到浏览器窗口的左侧和右侧。中栏实际上占据了整个页宽,中栏的内容在左、右两栏之间“流淌”。由于中栏div的宽度并不固定,因此它可以根据浏览器窗口的改变进行必要的伸缩。中栏div的左侧和右侧的填充(padding)属性保证内容安排在一个整齐的栏中,甚至当它伸展到边栏(左栏或者右栏)的底端也是这样。
:JD)y$Q^-~   [b]三栏布局的一个例子[/b]
7c$Ouf0Si \b-o]   请看看用本文所介绍的技术进行三栏布局的例子。
,m:z+E p;N5y%x.`.A0Q   这个例子用鲜艳的颜色来区分布局的各个div。
5M(M*QInnk   [b]XHTML代码:[/b]
[$W/`j/t l   Example Source Code
K!Y'{ fX [code]
Lq;b;GZf <body>'l2Z)uFU ]~R v4|
  <div id="header">
M+e0Gj+F$Y+VH   <h1>Header</h1>/tqNV"U6K `
  </div>
G5W+D4in}z([ k w   <div id="left">-MB-}T:tFM9Mm4W
  Port side text...
i iU6t&h*sP   </div>sQMz+f9f
  <div id="right">
$W*OAI2b|.NI   Starboard side text...
0k#djn Y)MdZ/\.R   </div>`r V bSl3L1V~V
  <div id="middle">\B,@B,RZ
  Middle column text...V4F+a2ly^)Be{A
  </div>%f is$A!}
  <div id="footer">
F*uI7q)?K   Footer text... Ns@ Ai
  </div>L'wD%y@*A1Y;`
  </body>d0_/k$l_
[/code]%U3_^#t1V lPA3R
[b]下面是CSS代码[/b]:R;N{;e(r H8a
  Example Source Code $e B5W1?O
[code]
HHSG PNs-D%~d body {
ERlA%t   margin: 0px;#F.c]4{3LM
  padding: 0px;
-Y5x5fUWM L}   }
mArsO#\u&W;j   div#header {3P3V:kW&|R
  clear: both;
$a Lk|x'ijw-Z[5]   height: 50px;X6].P1I'U
  background-color: aqua;M|/i8D:@5yH8F6A
  padding: 1px;
0b-Ek$L/lT4w   }
2O eAf!T[#Fn7`   div#left {
@E/^X'X#m,wHd   float: left;
[)yl:O;D] kZU   width: 150px;!a7| ch#S zU2}9F9w
  background-color: red;
w6_h*Mq/]:V   }8{4`$w6` zs:`6k(Yg
  div#right {
!}.C0O9T1_V^&z   float: right;%VCl@8_^3M4VV1Z
  width: 150px;
)c L2N`emdRb   background-color: green;4|V-z8Ze i&|
  }
W E&RR ^%R1v   div#middle {
}az@#f^   padding: 0px 160px 5px 160px;
o,iY Ju `   margin: 0px;
S&gz+]'V   background-color: silver;/A-v)u7f^
  }
6zbm I6~n9A7j6Z   div#footer {8S:w g~_ YVk S|
  clear: both;:^.b'ev Z7xD#?$dC
  background-color: yellow;"B.| G2HI*F9D,B+h{;l6^
  }
3{.s,j!]A d ;TP T$Rk.H*]Nj

c5zIU.z$KAC7`o q $A9fFzaH SZ
[/code]

页: [1]
【捌玖网络】已经运行:


Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.