書名: Bulma必知必會作者名: (美)杰里米·托馬斯(JeremyThomas) 戴夫·伯寧(DaveBerning) (波蘭)奧列克西·波切辛(OleksiiPotiekhin) (瑞典)米科·勞哈卡里(MikkoLauhakari) (德)阿斯拉姆·沙(AslamShah)本章字數: 1088字更新時間: 2020-08-11 18:13:33
序
在2007年的一堂無障礙設計課上,我偶然接觸到了CSS。當時老師強調了編寫頁面時將內容和樣式分離的必要性,并教授了如何通過CSS來實現。這次相遇對我來說意義重大,讓我意識到只需編寫簡單的CSS代碼,就可以實現想要的界面效果,不再需要使用Dreamweaver和復雜的表格布局方式。這次經歷也影響了我的職業生涯,最終我成為了一名Web開發者。
隨后的十年里,我學習了PHP、JavaScript、Ruby、Node等各種Web開發技能,但CSS一直是我掌握得最深的一門技術,也是我的立身之本。在這段時間里,CSS的許多新特性也得到了眾多瀏覽器的支持和良好的發展。我可以使用陰影、圓角、自定義字體和漸變色等功能來實現視覺效果,而不用再通過PNG圖片進行模擬。尤其值得一提的是,2015年底,CSS推出了一種新的布局模型Flexbox,并且該功能迅速流行開來。
Flexbox革新了傳統Web開發中使用的布局方式,列的布局不再依賴CSS浮動、清除浮動技巧和復雜的標記結構來實現,而是通過定義容器實現列布局自適應,得到自己的柵格系統。這可以極大地簡化HTML標記。當然,Flexbox還可以實現一些新的、強大的、令人耳目一新的東西,極具潛力。
在發現Flexbox的時候,我使用一個小型的Sass框架已有數月,這是我自己開發和維護的CSS框架。我利用它開發了許多個人的和專業的CSS項目。CSS框架的主要目標是簡化頁面的布局,而Flexbox正提供了這樣的功能。Flexbox可以通過清晰、靈活的標記結構解決頁面布局問題,這使得它成為了一種近乎完美的布局解決方案。Bulma最初是我開發的一個CSS生成器,以膠囊式代碼作為模塊組件,但最后我決定拋棄這個想法,轉而將我的Sass框架和最近掌握的Flexbox知識結合起來,編寫出一個新的現代CSS框架,Bulma由此誕生。
作為開源社區的擁護者,我將自己的CSS框架代碼上傳到了GitHub上,并在各種技術論壇和社交網站上進行分享。我認為如果這個小框架解決了自己的問題,那么也能幫助別人解決問題。雖然剛發布的時候未掀起波瀾,沒有獲得太多關注,但不久便風靡開來,成為了GitHub上的熱門項目,并登上了Hacker News和Product Hunt的首頁,還在Twitter上被分享了數百次。這讓我意識到該項目不僅有趣,還很實用。但我依然謹慎:也許Bulma的流行只是曇花一現,而事實是它得到了越來越多的關注。
經過兩年的發展,Bulma在GitHub上已經得到了24000多顆星,下載和安裝次數超過100萬。150位開發者參與貢獻并解決了860個問題,合并了300多個代碼請求。這段歷程也展現了開源社區如何將一個小型CSS項目轉變成Web開發的重要資源。考慮到Bulma催生出了眾多華麗的網站,推動了眾多企業的蓬勃發展,我相信Bulma一定會持續成長并得到廣泛應用。
在此過程中我收獲良多,包括新的CSS功能特性知識和更優雅的編程技巧。很多用戶表達了對Bulma的熱愛,稱贊它簡單易用,但對我來說,最大的收獲是能幫助成千上萬的開發者更愜意地遨游Web世界。
- 自制編譯器
- Implementing Cisco Networking Solutions
- Visual Basic學習手冊
- HTML5 and CSS3 Transition,Transformation,and Animation
- NGINX Cookbook
- Java高并發核心編程(卷1):NIO、Netty、Redis、ZooKeeper
- Service Mesh實戰:基于Linkerd和Kubernetes的微服務實踐
- Citrix XenServer企業運維實戰
- Scratch·愛編程的藝術家
- Learning Splunk Web Framework
- Mastering Adobe Captivate 7
- Tableau Dashboard Cookbook
- Python數據科學實踐指南
- MongoDB Administrator’s Guide
- C語言程序設計