网络编程
位置:首页>> 网络编程>> 网页设计>> 网页栅格系统研究(4):技术实现

网页栅格系统研究(4):技术实现

作者:玉伯 来源:Taobao.com UED Team 发布时间:2008-11-06 11:44:00 

标签:栅格系统,栅格,框架,css

前三篇文章中,明确了栅格系统的设计细节和适用范围。这一篇将集中讨论960栅格系统的技术实现。

Blueprint的实现

Blueprint是一个完整的CSS框架,栅格系统是它的一部分功能。我们来看demo页面

以上三栏布局的代码为:

<style type="text/css"> .container { margin: 0 auto; width: 950px } .span-8 { float: left; margin-right: 10px } div.last { margin-right: 0 } hr { clear: both; height: 0; border: none } </style> <div class="container"> <div class="span-8"></div> <div class="span-8"></div> <div class="span-8 last"></div> <hr /> </div>

上面是基本功能,Blueprint还支持append-n, prepend-m, border等“高级”功能,这些就不细说了。Blueprint的特点简单总结如下:

  1. 采用浮动来实现布局,简单明了

  2. 950两侧没有margin, 最后一列的class需要加上last

  3. 采用额外标签来清除浮动

960.gs的实现

谈到960栅格系统,不得不提960.gs. Nathan Smith在这篇文章中,详细阐述了他的想法和设计思路。这里有个demo页面,核心代码很简单:

<style type="text/css"> .container_12 { margin: 0 auto; width: 960px } .grid_4 { float: left; margin: 0 10px } </style> <div class="container_12"> <div class="grid_4"></div> <div class="grid_4"></div> <div class="grid_4"></div> <div class="clear"></div> </div>

上面就构建了三栏布局:

有意思的几点:

  1. margin是均匀放在950两侧的

  2. 所有grid除了宽度不同,左右边距都一致margin: 0 10px;

  3. 代码简单清晰,起始和结束列不需要添加额外class

很明显,Blueprint和960.gs都是采用浮动来实现布局的,主容器需要添加额外标签来清除浮动(可以参考这里)。当然,这也不是什么大问题,请看这篇文章的总结,不添加额外标签也可以清除浮动。

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com