首先說說框架(Frameworks)這個詞,框架就是為我們提供了一個平台一個運行環境,在如此統一的前提下我們做相關開發才能“有章可循”,要充分體會到“游擊隊”和“正規軍”的區別以及“零散”和“系統”的利害關系。我們常見的有 Microsoft .NET Frameworks、J2EE Frameworks等軟件開發框架等。對於Web而言,現在也流行起Frameworks框架概念,比如時下流行的AJAX框架。對於基於Web標准的CSS布局方案,也形成了一股CSS框架的潮流。
那麼,我們為什麼需要CSS框架。當我們越來越拋棄了表現和內容相混合的網頁布局時,網頁設計更沉重的負擔就集中在CSS布局上了,其中對於各類CSS樣式的命名、定義等就會讓我們覺得任務的繁重。尤其是當完成了一個項目,進行另外一個項目時,CSS的定義不能重復使用,使得二次開發、三次開發的重復勞動加倍……或許這也就是很多使用了CSS布局一段時間的同學為什麼要打退堂鼓的原因之一吧。
那麼此時一套已經命名完整、布局套路完整的CSS框架就能解決我們的難題,提高我們的工作效率。所以,不管從哪裡說,我們都不得不來面對CSS框架並了解一番。
現在,有人提出了大體上的CSS框架構思,參看這篇文章淺談css框架開發發現其主要思想就是將CSS文件進行功能分類:比如一個CSS文件主要用來定義布局,一個CSS文件主要用來定義表單,還有的CSS樣式文件各有用處……同時再將這些分散的CSS文件再分別組合為模塊文件夾進行保存,方便調用。當然,CSS命名的規范等細節也應考慮在CSS框架其中。
不過,也有人提出質疑,問題也很深刻,比如這篇文章(CSS Frameworks的概念)指出“CSS只是描述性語言”,所以現在的CSS框架不能稱得上CSS Frameworks,或許只能叫成一個系統級解決方案才對。
不管如何,我們還是比較習慣稱謂“CSS框架”、“CSS Frameworks”了,因為目前我們可見的就有這樣幾款“CSS 框架”提供大家使用。比如YAML、blueprintcss、Elements等。
下載使用並學習這些框架能讓我們盡快的建立自己的框架提供意識基礎和借鑒,同時也為我們的工作帶來大大的效率。比如這篇文章(CSS框架帶來的效率提升)提到的“一位北京的朋友A君,他有一個小的團體,主要是做歐美的外包項目。可以說做的站點很多都是大同小異。在看完前面的介紹後,他停下手頭的工作花一天時間初步的建立了一套自己的框架。接下來的一周,他們完成了10個項目的工作。在以前,每周他們大概可以完成5~6個(每個項目的工作量基本相同)。200%的效率提升!?”
這確實是實實在在能體會到的,有了CSS框架做網頁就如同老毛打仗有了好的指導方針、統戰思想,效果那是槓槓的。
不過,CSS框架雖然是效果良好,但要達到如此良好的境界,仍需要解決很多問題。一篇CSS框架的利與弊道出了我們的優勢:1、開發效率的提高。2、規范代碼命名。3、更好的團隊合作。4、解決浏覽器的兼容性問題。5、一套完整的、結構清晰的結構代碼。也帶來了一些問題:1、團隊每個人都需要完全的理解整套框架。2、會延續一些框架中的錯誤bug。3、限制開發思路。4、臃腫的源代碼。5、框架的語義化……等等。
所以,CSS框架還是一個過程,在沒有完全信任,沒有絕對權威的情況下,我們只有走建設有個人特色的CSS框架之路了