上面是基本功能,Blueprint還支持append-n,prepend-m,border等“高級”功能,這些就不細說了。Blueprint的特點簡單總結如下:
1.採用浮動來實現布局,簡單明了
2.950兩側沒有margin,最後一列的class需要加上last
3.採用額外標籤來清除浮動
960.gs的實現
這裡有個demo頁面,核心代碼很簡單:
.container_12{margin:0auto;width:960px} .grid_4{float:left;margin:010px} |
上面就構建了三欄布局:

網頁柵格系統
有意思的幾點:
margin是均勻放在950兩側的
所有grid除了寬度不同,左右邊距都一致margin:010px;
代碼簡單清晰,起始和結束列不需要添加額外class
很明顯,Blueprint和960.gs都是採用浮動來實現布局的,主容器需要添加額外標籤來清除浮動。
接著來看大名鼎鼎的YUIGridsCSS.YUI的CSS框架由三個文件組成:
reset.css-樣式重置 fonts.css-版式字體控制 grids.css-柵格系統 |
我們從demo開始:

網頁柵格系統
注意,demo鏈接中的寬度是750的,但我們只要將
中的id改為doc2,頁面寬度就自動變為950寬了,來看下dom結構:
網頁柵格系統
採用的也是浮動布局,簡化后的
CSS代碼為:
.doc2{margin:auto;width:73.076em} .yui-u{float:left;margin-left:1.99%;width:32%} div.first{margin-left:0} #ft{clear:both} |
YUI的特點是:
依舊是採用浮動布局,槽(Gutter)寬通過margin-left來控制(Blueprint採用右邊距,960.gs採用均分,這三個框架對槽的處理實在有意思)
總寬度採用em,這樣可以用在彈性布局上
欄的布局用的是百分比,採用了流體布局
YUI的好處是能用來做自適應布局,在這前面兩個框架里是沒有的。但普通的定寬布局,YUI則顯得有點麻煩,比如我們要實現四欄布局,dom得這樣寫:

網頁柵格系統
柵格系統具有以下優勢:
能大大提高網頁的規範性。在柵格系統下,頁面中所有組件的尺寸都是有規律的。這對於大型網站的開發和維護來說,能節約不少成本。
基於柵格進行設計,可以讓整個網站各個頁面的布局保持一致。這能增加頁面的相似度,提升用戶體驗。
對於設計師們來說,靈活地運用柵格系統,能做出很多優秀和獨特的設計。(詳見《
超越CSS》一書)