一文搞定UI設計間距那點事!【進階篇】

2022-11-23    seo達人

 一、文字與間距 

文字是UI設計中最重要的信息傳遞元素,文字的排版看似容易其實并不簡單,因為文字的屬性眾多,比如字號、字間距、行高、段落等等。

很多設計師對文字屬性很了解,也能夠合理運用,但總會卡在開發(fā)環(huán)節(jié),花費很長時間驗收,最終還是得不到理想效果。

下面我們從根上去認識文字,對文字中能夠影響排版間距的屬性,一一解析,并且了解開發(fā)邏輯,正確與他們對接。

 

二、文字-行高

字體設計師,為了能滿足文字行間距的合理展示,通常會給字體設定一定的行高。

行高就是在設計軟件中選中文字后,上下外邊框高度,字體的行高沒有標準,不同的字體一般默認行高也不一樣。

圖片

也就是因為字體的行高,讓UI設計師對文字與其他元素的間距設定,有不同的見解。

圖片

上圖都是30px的間距,但因為字體行高不同,A、B兩個方案的實際視覺間距不同。

認同A方案合理的設計師,理由是文字最好設置一定的行高,不然折行時視覺上沒有行間距,很擁擠,不得不再設置行高,最終30px的間距還是有間隙。

圖片

認同B方案的設計師,理由是UI設計本身對幾個像素的差距就很敏感,視覺上做不到統(tǒng)一,就是不合理。

兩者的表述都對,但也確實都有一定的弊端,下面給大家介紹兩個解決方案。

可以確定的是,為了滿足文字折行后的閱讀性體驗,最好帶有一定的行高,這樣也會利于與開發(fā)對接。

 

1、第一種:

首先說一下UI設計中,間距設定的一個理念,間距設定一般要設定一個最小柵格基數(shù),如4、5、6、8為間距設定的起始數(shù)值。

然后頁面中,接下來所有的間距設定,都得是這個數(shù)值的倍數(shù)。(這點后面會詳細講解)

?在一個帶有文字的設計組件中,若設計思路上要呈現(xiàn)視覺統(tǒng)一的間距,那可以算出字號與行高的間隙,然后減去相對應的柵格數(shù)值,使其視覺上接近統(tǒng)一的間距。

下圖所示,設計思路上想呈現(xiàn)一個30px的統(tǒng)一間距,那就可以減去一個最小柵格數(shù)值。

若最小柵格數(shù)值是6px,最終給出的間距就是24px,視覺距離呈現(xiàn)的就是接近30px的距離。

圖片

這種方式也是我一直以來用的方法,好處就是沒有打破間距設定的原則。

設計的間距與開發(fā)看到的間距,都是有規(guī)律的柵格系統(tǒng)間距。

唯一有點不完美的地方就是,實際距離有時還會有一點小誤差,但其實在視覺上也完全可以忽略掉了。

 

2、第二種:

第二種方式就是精益求精,不考慮間距的柵格系統(tǒng)原則,算出字號與行高的間隙,間距上準確減去,保證沒有一丁點的誤差。

 

我找了一下這樣的產(chǎn)品,發(fā)現(xiàn)iOS端的滴滴APP中,有個模塊是這樣的設計理念。

圖片

上圖案例中,字號36px,行高44px,文字上下的間隙就是4px。

所以設置距離26px,加上行高間隙正好是30px,得到統(tǒng)一的間距效果。

這種方式有一個小小的弊端,就是開發(fā)感受不到間距的規(guī)則,最終設計驗收時可能會耗費更多的時間。

 

特殊情況:

另外有一種情況,就不能刻意去追求文字的視覺對齊,除非是平面設計,因為開發(fā)的邏輯也不會去支持這樣做。

圖片

上圖中錯誤的方式是因為,開發(fā)寫這個卡片,會寫成一個容積俗稱盒子,內(nèi)容都會放在盒子里面,就算內(nèi)容過多,也是向下進行擴展適配。

 

圖片

 

三、開發(fā)對接-關(guān)于行高(重點內(nèi)容)

字體行高的間隙有了解決方法,接下來是與開發(fā)的對接,這也是最關(guān)鍵的一個環(huán)節(jié),設計的再好,最終不能很好的落地,也是白搭。

UI設計師在設計驗收iOS端時,可能會遇到這樣的問題,設計與開發(fā)都用了同樣的間距參數(shù),但最終呈現(xiàn)的間距還是不一樣。

原因就是,同樣的蘋方字體,iOS端開發(fā)的默認字體行高,與設計軟件中的字體默認行高不一樣。

比如在Sketch軟件中42號字的蘋方字體默認行高是59,但是iOS開發(fā)軟件中默認是52。

圖片

如果開發(fā)不手動調(diào)整字的行高,就會出現(xiàn)與設計的偏差。

根據(jù)我的調(diào)研,iOS開發(fā)工程師,若不是特殊情況,基本不會去改默認行高參數(shù)。

下面我們列舉一下,設計常用蘋方字號的默認行高,與iOS開發(fā)默認行高的數(shù)值對比,從中找一下規(guī)律。

圖片

上圖中可以得出,字號越大,設計默認行高與iOS開發(fā)默認行高差距越大。

所以設計上最好把默認行高改成與開發(fā)一樣的默認行高,這樣才能保障,開發(fā)不手動調(diào)整行高下,是一致的。

iOS開發(fā)字號默認行高有一定的規(guī)律,隨著字號的增加,行高會在字號基礎上+4、+6、+8、+10以偶數(shù)遞增。

圖片

雖有規(guī)律但也不容易形成記憶,推薦一個公式。

用字號除10后乘以2,再加上字號,就是iOS開發(fā)的默認行高,公式如下:

圖片

有公式可能還不夠便捷,再給大家推薦一款Sketch行高修復插件,Auto Fix iOS Text Line 1 for Mac 。

這款插件是專門針對iOS字體行高修復,使其與開發(fā)默認行高保持一致。(公眾號后臺回復666可獲?。?

 

1、關(guān)于安卓

安卓系統(tǒng) Material Design 使用的字體,中文是思源黑體,英文是Roboto。

因為安卓系統(tǒng)開源,不同的安卓手機廠商大多會更換字體。

比如小米手機MIUI系統(tǒng)中英文都使用Misans字體,所以安卓文字行高沒有一個標準。

安卓開發(fā)與iOS開發(fā)還有個不同點是,安卓開發(fā)使用什么字體,行高就是字體本身的默認行高。

思源黑體行高默認和字號大小一樣,Roboto行高接近蘋方字體行高。

如果設計稿按安卓規(guī)范設計,那思源黑體最好設置成與蘋方字體一樣的行高,然后安卓工程師手動去調(diào)整,iOS開發(fā)工程師所見即所得。

 

2、字體修復后使用經(jīng)驗

關(guān)于修復后字體的使用方式,分享一些經(jīng)驗,UI設計中使用文字的頻率很高,有標題、副標題、正文、輔助文字等,字號都有所不同。

當在設計中,確定這些文字字號后,做一次行高的修復,然后把這些文字創(chuàng)建成字符樣式,每次用時從字符樣式庫里面選擇即可。

圖片

最后說一下,特殊情況結(jié)合自身產(chǎn)品風格,去定義文字行高是完全沒有問題的,開發(fā)可以根據(jù)設計的定義的行高進行調(diào)整。

 

四、文字-段落

在有段落的文案中,很多設計師為了方便,直接給一個回車鍵的段落間距,這樣是萬萬不可取的。

圖片

一個回車鍵的間距,就是一行字的行高,通常這個間距都比較大,就算設計風格需要這么大的間距,那一定也要手動去設置段落。

圖片

段落數(shù)值的設定,一般情況要大于文字行高的一半,比如文字行高為42,那段落最好大于21,這樣段落間距加上文字行高,整體就是≥1.5倍。

為什么是≥1.5倍?原因是文字的行間距,一般大于1.5倍視覺上是比較舒適,例如字號是30,那行高設置為45,形成1.5倍的間距。

 

五、文字-字間距

字間距是字與字之間的間距,默認一般為0不做設定,特殊設計風格以外。

有一種情況,當一段左對齊文字中存在標點或數(shù)字英文字母時,那末尾可能不夠一個字符的空間,就會出現(xiàn)末尾留白的情況。

圖片

出現(xiàn)這種參差不齊的情況,確實不那么美觀,但在UI設計中實屬正常。

不用刻意去設置成左右水平對齊,這樣雖整齊,但因為不同的字間距會影響閱讀體驗。

圖片

 

六、文字-字號

不同字號間距設定有一個原則,當字號越大時,字與其他元素間距也就需要相對越大。

字號越大說明級別越高,級別越高從信息層級上來講,就需要較大的間距來呈現(xiàn)。

圖片

這是客觀上的一個原則,文字越大,就需要更多的留白去承托,就像文字的行高,字號越大文字的行高增加的倍數(shù)也就越大。

 

 1、如何定義間距? 

間距是UI設計中建立信息層級、提升閱讀體驗、表達元素之間的關(guān)系、表現(xiàn)重要信息的重要方式。

定義合理的間距其實非常有學問,打開京東、淘寶你會發(fā)現(xiàn)元素之間的間距非常緊湊,打開愛彼迎、蔚來又會發(fā)現(xiàn)元素之間較為寬松,這是為什么?

其實就是他們的設計語言不同,致使展示出的形態(tài)也就各異,而間距就是表現(xiàn)設計語言的其中一種方式。

UI設計中,間距的設定一般會選擇一個最小柵格基數(shù),如4、5、6、8等數(shù)值,之后頁面中,所有的間距都要以,最小柵格基數(shù)的倍數(shù)呈現(xiàn)。

谷歌推出的設計語言 Material Design 推薦柵格系統(tǒng)的最小基數(shù)是8dp,一切間距、尺寸都應該是8dp的倍數(shù)。

淘寶的設計,據(jù)我所知用的是5的基數(shù),愛彼迎用的是8的基數(shù),從這點來看,基本可以得出一個結(jié)論,使用越小的數(shù)值基數(shù),設計呈現(xiàn)通常就會越緊湊。

一個最小柵格基數(shù)的倍數(shù)值有很多,但其實通常有6個左右常用間距,就能滿足絕大多數(shù)的場景。

我目前負責的產(chǎn)品最小柵格基數(shù)是6,設計上常用間距大概有6個,完全能夠滿足大多數(shù)設計場景所需。

圖片

這些間距其實并不用刻意去選擇,當你使用最小柵格倍數(shù)值時間長了,就能自然得出幾個常用的間距,字號的選擇使用基本也適用這個邏輯。

另外,一個產(chǎn)品中模塊眾多,難免會出現(xiàn)一些特殊情況,所以肯定不能限定死只可以用那幾個間距。

除了上圖中列舉的常用間距之外,12、36、90、120等一些間距數(shù)值也會用到,只是用的頻率不會很高。

 

2、案例解析

接下來,根據(jù)最小柵格基數(shù)為6的設計規(guī)范,通過一個商品卡片案例,分析一下間距設定的幾個原則。

圖片

上圖中,首先要給各個元素分類,比如主標題和副標題是一類內(nèi)容;標簽是一類內(nèi)容;價格是一類內(nèi)容;“找相似”按鈕又是一類內(nèi)容。

圖片

根據(jù)親密關(guān)系原則,同類內(nèi)容的間距應該更近,這樣有利于建立信息層級關(guān)系,提升用戶的可讀性。

具體多近呢?可以根據(jù)商品卡片在頁面中的外邊距,來進行分析定義。

看一個產(chǎn)品的外邊距基本能判斷,是寬松型排版,還是緊湊型排版。

圖片

產(chǎn)品的外邊距是根據(jù)設計語言,產(chǎn)品定位,產(chǎn)品內(nèi)容多少等來定義,常見的邊距有20、24、30、36、48、60等。(大概就是這個范圍內(nèi))

使用較大外邊距,內(nèi)容區(qū)域的間距要小于外邊距,小到可以直觀分辨即可,這樣可以體現(xiàn)出頁面中,內(nèi)容的親密關(guān)系。

圖片

使用常規(guī)外邊距,比如我們的案例中,使用30px就是常規(guī)外邊距,內(nèi)容區(qū)域要適當小于或等于外邊距,這樣視覺上體現(xiàn)的是統(tǒng)一性。

圖片

主標題與副標題屬于同類項,它們之間的間距一定要小于,卡片的內(nèi)邊距,這樣整體看上去才能體現(xiàn)信息層級。

間距小到多少,還是那個理念,可以直觀感受到比內(nèi)邊距小即可為止,不能過小。

一般來說,視覺上的間距大概是內(nèi)邊距(同模塊中的大間距)的一半,就會表現(xiàn)的不錯。

圖片

案例中設置的是一個柵格單位6px,再加上文字的行間隙,視覺上大概就是15px的間距,就是內(nèi)邊距的一半。

接下來,給案例加標簽,標簽與文字不是同類信息,所以要適當與主副標題拉開間距。

通常第一選擇就是,視覺距離與內(nèi)邊距30px,保證統(tǒng)一。

案例中設置的是24px,再加上文字的行間距,就非常接近30px。

圖片

接下來是價格,對于一個商品卡片設計,價格是需要著重突出體現(xiàn)的。

一般設計上要突出一個元素,大概3種方式:一是改變顏色;二是放大;三是加大留白;也就是加大間距。

案例的商品卡片,設計風格價格顏色規(guī)范是黑色,所以顏色不能改變。

只能放大或加大留白,放大和留白得在合理的范圍內(nèi),不然就會破壞卡片的整體結(jié)構(gòu)性。

間距上與標簽設置30px的間距,加上文字的行高,視覺上的間距,會成為卡片中最大的間距留白,從而起到突出的作用。

圖片

這種設計方法,在一個設計組件中,最好只出現(xiàn)一個,不然整體結(jié)構(gòu)就會有一定程度上的破壞。

另外強調(diào)一下,統(tǒng)一性固然重要,但設計的核心是為需求目標服務,所以,這時候統(tǒng)一性的優(yōu)先級是次于需求目標的。

就像淘寶首頁的瓷片區(qū),間距非常緊湊,失去了一定的美感,但這樣做確實展示了更多的內(nèi)容,滿足了需求目標。

 

 七、最后 

最后做個總結(jié):

1、關(guān)于文字的間距,要考慮文字的行高,盡可能保持視覺統(tǒng)一性;

2、iOS設計稿,設計軟件中默認的文字行高,與開發(fā)軟件中的默認行高不一致,最好修復行高,與開發(fā)保持一致;

3、文字段落不要用回車鍵去定義,要用段落參數(shù),段落間距通常要大于文字行高1.5倍;

4、多行文字出現(xiàn)這種參差不齊的情況,不要設置為左右水平對齊;

5、一般字號越大,字與其他元素間距也需要越大;

6、UI設計要結(jié)合產(chǎn)品定位等,制定最小柵格基數(shù),然后任何間距要以最小柵格基數(shù)的倍數(shù)呈現(xiàn);

7、一個產(chǎn)品中,通常設置6個左右的間距數(shù)值,能滿足大多數(shù)設計的場景;

8、善于使用親密關(guān)系、留白理念、統(tǒng)一性等設計原則,設計前理解需求目標。


作者:吳星辰

轉(zhuǎn)載請注明:學UI網(wǎng)》一文搞定UI設計間距那點事!【進階篇】

藍藍設計建立了UI設計分享群,每天會分享國內(nèi)外的一些優(yōu)秀設計,如果有興趣的話,可以進入一起成長學習,請加藍小助,微信號:ben_lanlan,報下信息,藍小助會請您入群。歡迎您加入噢~~希望得到建議咨詢、商務合作,也請與我們聯(lián)系01063334945。


分享此文一切功德,皆悉回向給文章原作者及眾讀者.
免責聲明:藍藍設計尊重原作者,文章的版權(quán)歸原作者。如涉及版權(quán)問題,請及時與我們?nèi)〉寐?lián)系,我們立即更正或刪除。


藍藍設計sillybuy.com )是一家專注而深入的界面設計公司,為期望卓越的國內(nèi)外企業(yè)提供卓越的UI界面設計、BS界面設計 、 cs界面設計 、 ipad界面設計 、 包裝設計 、 圖標定制 、 用戶體驗 、交互設計、 網(wǎng)站建設 、平面設計服務UI設計公司、界面設計公司、UI設計服務公司、數(shù)據(jù)可視化設計公司、UI交互設計公司、高端網(wǎng)站設計公司、UI咨詢、用戶體驗公司、軟件界面設計公司


分享本文至:

日歷

鏈接

個人資料

藍藍設計的小編 http://sillybuy.com

存檔