柵格篇 | 不會柵格系統?拿走這篇零基礎使用指南!
在如今多終端多設備的場景下,多屏設計成為了當今產品設計中需要考慮的重要一點,也是商業設計中不可或缺的一部分。柵格系統能夠輔助設計師進行界面排版布局,能夠優化用戶體驗。本文對該系統設計進行了詳細的介紹,希望對你有所幫助。
在如今多終端、多設備尺寸的加持下,多屏設計就成了商業設計中不可缺少的一部分,為了讓所用界面的視覺表現出統一性和一致性、同時還在不同系統及不同尺寸的設備上保持良好的用戶體驗,柵格系統就顯得尤為重要,它能輔助設計師制定界面排版布局的方案,以網格的形式將多元素/內容鏈接在一起,很好的做到多平臺、多尺寸的適配,讓設計美感、工作效率都得到了很大的提升。
一些優秀的產品都在使用柵格去規范界面信息的排版布局,雖然它只是傳統設計方式的一部分,但只要不嫌麻煩,就可以使用柵格系統解決很多設計布局的問題。
不少設計師都知道柵格的重要性,但礙于對其一知半解,以至于在設計中總有些無從下手,本文筆者將從瀏覽過的大量文章結合自身工作經驗對柵格作出了系統化的總結,希望能幫助初/中級設計師對柵格有一個更深的認識。
一、柵格的定義及重要性
1. 柵格的來源
柵格的概念來源于平面設計中的“網格”,早在13世紀,法國建筑師 Villard de Honnecourt 創作了一張圖表,試圖實現“和諧的設計”,這也是繼黃金比例之后,第一次將網格與其結合在一起,以此產生固定比例的頁面布局。
在18世紀工業革命大規模生產的開始,隨著報紙、傳單等主流印刷品的興起,設計師們需要解決“將不同的信息傳達給不同的人群且能自然瀏覽、還要防止不同部分爭奪讀者的注意力”的問題時,柵格的雛形已然顯現出來。
20世紀初,設計師們發現使用網格輔助設計印刷作品,可讓排版布局更加清晰、信息傳遞也更加有效,由此演變成了平面設計中的一種方法。
20世紀中期,約瑟夫·米勒-布羅克曼著作了《平面設計中的網格系統》一書對設計界影響至今。
由此不難發現,不管是前幾個世紀的印刷刊物、還是如今的互聯網產品界面布局,柵格都可以作為組織信息的工具,幫助設計師實現一致、和諧的信息布局效果。
2. 什么是柵格
柵格和網格的英文都以“Grid”來表示,其本質是為了給版面提供一個基本設計框架,這也是為實現有組織的設計其中方法之一,在平面設計中稱之為“網格”,而在網頁/移動端中更多稱為“柵格”。
柵格是根據平面中的網格發展而來,通過一定的規律、合理的設置基準線來規范界面中的元素(文本/圖像),讓每個區域能夠相對獨立卻又能相互關聯,形成整個界面,最終呈現出清晰易讀的信息布局。
3. 為什么要使用柵格
首先對用戶來說,使用柵格能讓內容布局具有規律性,通過定義留白、對齊、分割等各種比例關系,不僅能降低用戶認知成本,還能讓信息的展現更加清晰,有效提升用戶的瀏覽、接收效率。
其次對于研發團隊,柵格通過統一的標準規范對設計師進行約束,協同產出一致性的視覺效果,避免了一人一個樣式的混亂場面,同時減少了部分細節上的溝通,提高決策及產出效率。在開發過程中,程序員通過有規可循的設計規律,可對部分組件及模塊進行封裝調用,不僅高度還原設計效果、還能提高開發效率。
另外,在設計Web界面時,使用柵格系統能一稿適配電腦、平板、手機等不同的設備尺寸,合理兼容多端、多系統下的自適應效果。
二、柵格系統的組成
柵格系統并沒有我們想象的那么復雜,它主要由網格、列、水槽、邊距、總寬、容器盒子等組成,只要清楚它們之間的相互關系以及定義即可,下面我們將一一了解:
1. 網格(Gird)
網格(Gird)是由基本單位「單元格」構成,也被稱為最小單元格,而柵格則是由一系列規律的網格組成,通常情況下,我們會使用8作為作為柵格中的最小單位,以此進行增量。
為什么用8為基礎倍數呢?
首先作為偶數,程序進行單位換算后可被整除,避免像素出現小數點;其次,8為增量單位既不會顯得瑣碎、也不會讓內容過于分散,當界面中所有元素都以8為倍數時,其元素大小、間距都有規可循,之前筆者曾寫過一篇「間距」類的文章,感興趣的伙伴可以去看一下。
2. 列(Column)
列(Column)指的是柵格數量,如12柵格有12個列、24柵格就是24個列,主要用來對齊內容。通過柵格的列數來控制版面的呼吸感及節奏感,列數越多、內容排版越精細,反之列數越少、內容排版就越疏松。
3. 水槽(Gutter)
水槽(Gutter)是指列與列之間的間距,通過留白以實現界面中的信息元素分割及版式呼吸感。水槽的寬度對設計風格會存在一定影響,水槽越大留白就越多、其呼吸感就越好,反之留白就越少、內容也會變得較為緊湊。
4. 邊距(Margin)
邊距(Margin)是指界面內容到屏幕邊緣的距離,主要用來控制核心內容的展示邊界,所以是禁止放置任何內容的(部分浮窗、返回頂部按鈕、右側吸附邊欄除外)。邊距值的大小會直接影響到柵格區域空間,這點大家自行理解即可。
5. 柵格總寬(Container)
柵格總寬(Container)是指所有列加所有水槽再加上兩側邊距的總和,即整個柵格系統的總寬度。
6. 容器盒子(Col-n)
容器盒子(Col-n)是指布局信息的版面區域,通常設計師在設定好基礎柵格后,會根據實際情況去定義一塊內容需占用幾個列的寬度并形成容器,后續在設計過程中,會將文字、圖片、按鈕等元素約束在限定的容器寬度以內形成復用組件,最終組合拼裝成完整的設計方案。
三、柵格系統制作流程
1. 設計柵格寬度
在設計Web端界面時設計師需要先根據實際使用場景確定好布局后,再來設定柵格區域,如下列布局:
屏幕寬度并不等于柵格的寬度,大多數情況下,我們會基于1920、1440這兩個尺寸來定義設計稿的寬度,但真正放置信息內容的區域并非設計稿尺寸,需要做到多平臺、多尺寸顯示器的適配,通常會將柵格寬度定義在1024px~1400px之間。
例如:常見的1024px、1200px、1280px、1400px等,可滿足絕大多數主流顯示器,如果柵格寬度超過1400px,在很多筆記本電腦上瀏覽頁面時,會出現左右滾動條,體驗非常不友好。
2. 選擇柵格列數
1)12柵格
12列柵格很常見,一些業務信息分組較少的商業網站、門戶網站等使用的就是12柵格,它能夠被2、3、4、6 整除,很容易滿足信息較為復雜的等分布局場景。
另外,針對不對稱布局的容器組合也能將信息體現的很和諧,如雙欄布局使用4+8、3+9柵格,三欄布局使用2+8+2、3+3+6 柵格等,變化較為靈活。
2)24柵格
24列柵格適合信息量大、分組多且多樣復雜的使用場景,很多視覺區域較大、需要精細化布局的B端Web設計采用的就是24柵格,相比12柵格,有更多的區域劃分空間,其布局的靈活性也更強。
需要注意的是,24柵格因列的數量比較多,很多時候列寬無法被精準整除,不過相差的像素數值極小,往往無法被用戶肉眼覺察,無傷大雅。柵格本身的目的就是為了保持視覺效果的協調與統一,并非為了死磕某個像素,特殊情況區別對待即可。
3)5柵格
5列柵格一般用在移動端設計中,因設備屏幕的橫向空間有限,所以很少使用,例如:針對“金剛區”的5圖標(一行)、10圖標(兩行)的規范化排版。如果想進一步追求后續的靈活性、避免奇數的不便,也可將5列柵格拆分成10列,布局、視覺效果基本能保持一致。
其實在實際設計中,設計師們大多會使用間距來規范界面的排版與布局,相比5列柵格會更靈活、更便捷。
3. 定義水槽與邊距
水槽就是列的間隔,其定義方式可以延用間距系統的制定標準,以8px為最小單位進行推導,如S=8px、M=16px、L=24px、XL=32px、XXL=40px、…等,這樣更容易保持視覺的一致性,最終到底使用哪個值沒有絕對的要求,這還需要根據產品的調性及設計風格來決定,水槽的數值越大,頁面的留白間隙就越多。
當我們確定好內容區寬度、水槽寬度及數量后,計算出列寬(上述有提到不一定整除)并將整體進行居中顯示,兩側即自動形成邊距。
四、柵格與響應式的結合
1. 自適應與響應式
1)自適應
自適應布局是為了讓網頁內容根據不同終端來自行適配布局,設計師需要制定好同一設計稿的變化規則,程序員在開發時創建多個布局,對不同的終端分別提供一套獨立的前端代碼,系統就能自行判斷當前訪問的是PC端、平板還是手機。
我們可以做一個測試,對自適應網頁窗口的寬度進行調整,就會發現每經過一個斷點時,頁面的元素位置就會發生改變,呈現出不同的布局效果。需要明確的是,當窗口寬度未達到下一個斷點之前,元素不會隨著窗口的調整而變化。
自適應效果因需要前端為每個終端提供獨立的代碼,固開發成本較高,在設計時,元素的大小、位置變化不必太過復雜,只需保留必要的功能入口即可。
2)響應式
響應式沒有自適應那么多的控制,前端只需通過一套代碼即可無縫銜接電腦端、平板和手機,可多端同步生效,其開發成本及設計成本都相對較低,適應性更強。
響應式布局最典型的就是當頁面窗口寬度發生變化時,元素的大小隨時都在發生變化,特別是圖片的伸縮、整行文字的長短變化尤為明顯。
2. 柵格行為變化
1)固定柵格
將自適應關聯到柵格上,簡單來說,就是頁面寬度在變化過程中未達到下一個斷點時,柵格的列與水槽寬度不變,頁面布局不會產生變化。當達到預設斷點,柵格的列數與水槽會相應增加或減少,頁面右側的內容也會隨之增減,但元素之間的尺寸與間距依然是固定的。
固定柵格的適配規則簡單,實現成本也相對較低,但是因為在拉伸過程中邊距的不固定性,局限了其適用范圍,一般只適合用在內容居中、上下結構布局類型的產品中。需要注意的是,在過大或過小尺寸的屏幕上,比例可能會顯得不夠協調。
2)流動柵格
流動柵格的邊距、水槽寬度是固定不變的,在達到下一個斷點前,列的數量也不會增加,列寬會跟隨頁面寬度左右伸縮,變化規則不一定是最小單位(8px)倍數,內容元素也會隨著頁面寬度的變化而變化,以保持頁面內容始終充滿屏幕的可用空間。
我們可以將流動柵格的視覺呈現方式稱之為響應式彈性布局,這種布局的兼容性很高,能很好的適應多端設備及不同的屏幕分辨率。對于不同尺寸的卡片混排也能平滑過渡,不會顯得突兀,例如:圖像、視頻、內容編輯器、數據可視化等,除斷點變化外,內容元素的縮放不會改變頁面的排版布局。
3)混合柵格
絕大多數的網站使用的都是流動柵格,但一些后臺管理系統及工具型界面設計為了使布局既有固定的寬度、也有流動的寬度,就會采用混合柵格的形式。
混合柵格的靈活性很高,特別是內容較為復雜的產品會顯得更加友好,在不同分辨率的屏幕上都能達到理想的視覺效果。不過對于開發來說,規則相對復雜,實現成本較高。
五、部分問題及處理方式
1. 水槽中不要留下元素
這里所說的并非水槽中不能存在內容,而是不要將單個元素或元素的邊緣置于水槽內,否則就會參差不齊,違背了柵格的目的。如果你的元素過大,就讓他跨越柵格,到達下一個列的右側邊緣。
2. 柵格不一定整除
雖說設計師對于每一個像素的的追求都很執著,但大部分情況下柵格都是無法整除的,而相差的像素也無法被用戶以肉眼覺察。我們需要理解的是,柵格的目的是為了保持視覺的協調與統一,而非像素級的精確。
舉個例子,以1920px的寬度、12柵格為例,內容區寬度可以是1000px、1200px、1400px、1600px…,每一次內容區寬度的變化都要將柵格的列寬重新調整,永遠無法將柵格每次整除,即便偶爾也是例外。
3. 柵格區域外的內容
柵格是為了規范內容,并不是所有的內容都需要柵格。大多數情況下我們只需要將主要內容區域遵循柵格系統即可,其他部分如固定導航、側邊懸浮欄、右下角彈窗…等不一定要跟隨屏幕尺寸或內容的變化而變化。
4. 合理的打破柵格對齊
對齊在柵格系統中的地位可謂是舉足輕重,不過在一些特殊場景中不必為了對齊而對齊,在不影響視覺效果的前提下,可以根據實際情況合理的打破對齊。
如下圖中的照片墻,利用極小的間距將一些寬度不同的照片排列在一起,雖然沒有同柵格的列寬對齊,但我們第一眼很容易將這些照片聯想成一個整體,同時又能輕松的單獨區分開來,也不會影響整體布局。
5. 子父級模塊對齊父級
在部分場景中,當我們以卡片的形式將多個內容形成一個信息組,這時可以忽略子級元素的對齊方式,父級卡片遵守柵格對齊即可。
結語
柵格系統能為設計提供便捷,有助于設計效率的提升,很多設計師都會去關注柵格為什么重要,卻容易忽略柵格在實際項目中的使用原則,同時還要伴隨一些限制條件,所以并沒有平常想象的那么簡單。
本篇文章提供了柵格系統的基礎知識,希望能夠拋磚引玉,幫助大家解決在使用過程中遇到的常見問題,讓柵格更好的服務于設計,若有不足之處,歡迎補充。
專欄作家
大漠飛鷹;公眾號:能量眼球,人人都是產品經理專欄作家。致力于產品需求的驅動、產品體驗的挖掘,利用設計的手段為受眾用戶帶來更好的體驗,即好看、好用。
本文原創發布于人人都是產品經理,未經許可,禁止轉載。
題圖來自 Unsplash,基于 CC0 協議。
該文觀點僅代表作者本人,人人都是產品經理平臺僅提供信息存儲空間服務。
第三節,設計柵格寬度那一塊兒,
“屏幕寬度并不等于柵格的寬度,大多數情況下,我們會基于1920、1440這兩個尺寸來定義設計稿的寬度,但真正放置信息內容的區域并非設計稿尺寸,需要做到多平臺、多尺寸顯示器的適配,通常會將柵格寬度定義在1024px~1400px之間。”
將柵格寬度定義在“1024px-1400px”之間,這是對于靜態頁面來說的吧,只需要一個固定的柵格寬度就可以適配大部分顯示器;如果是響應式布局的話,柵格寬度應該是動態變化的,例如當屏幕是1920寬度的時候,柵格寬度就有可能超過1440.