當前位置:首頁>新聞中心>建站知識>移動端尺寸基礎知識

建站知識 Valuable internet information


移動端尺寸基礎知識

關鍵詞:網站建設 來源:南甯網站建設 作者:南甯網站制作 發(fā)布時間:2017-10-26 浏覽次數:1175

從原理開(kāi)始介紹一下移動端設計尺寸規範
初涉移動端設計和開(kāi)發(fā)的同學(xué)們,基本都(dōu)會在尺寸問題上糾結好(hǎo)一陣子才能(néng)摸到頭緒。我也花了很長(cháng)時間才弄明白,感覺有必要寫一篇足夠通俗易懂的教程來幫助大家。從原理說起(qǐ),理清關于尺寸的所有細節。由于是寫給初學(xué)者的,所以不要嫌我啰嗦。


現象
首先說現象,大家都(dōu)知道(dào)移動端設備屏幕尺寸非常多,碎片化嚴重。尤其是Android,你會聽到很多種(zhǒng)分辨率:480x800, 480x854, 540x960, 720x1280, 1080x1920,而且還(hái)有傳說中的2K屏。近年來iPhone的碎片化也加劇了:640x960, 640x1136, 750x1334, 1242x2208。
不要被(bèi)這(zhè)些尺寸吓倒。實際上大部分的app和移動端網頁,在各種(zhǒng)尺寸的屏幕上都(dōu)能(néng)正常顯示。說明尺寸的問題一定有解決方法,而且有規律可循。

要知道(dào),屏幕是由很多像素點組成(chéng)的。之前提到那麼(me)多種(zhǒng)分辨率,都(dōu)是手機屏幕的實際像素尺寸。比如480x800的屏幕,就是由800行、480列的像素點組成(chéng)的。每個點發(fā)出不同顔色的光,構成(chéng)我們所看到的畫面(miàn)。而手機屏幕的物理尺寸,和像素尺寸是不成(chéng)比例的。典型的例子,iPhone 3gs的屏幕像素是320x480,iPhone 4s的屏幕像素是640x960。剛好(hǎo)兩(liǎng)倍,然而兩(liǎng)款手機都(dōu)是3.5英寸的。
所以,我們要引入重要的一個概念:像素密度,也就是PPI(pixels per inch)。這(zhè)項指标是連接數字世界與物理世界的橋梁。


像素密度

Pixels per inch,準确的說是每英寸的長(cháng)度上排列的像素點數量。1英寸是一個固定長(cháng)度,等于2.54厘米,大約是食指末端那根指節的長(cháng)度。像素密度越高,代表屏幕顯示效果越精細。Retina屏比普通屏清晰很多,就是因爲它的像素密度翻了一倍。


倍率與邏輯像素

再用iPhone 3gs和4s來舉例。假設有個郵件列表界面(miàn),我們不妨按照PC端網頁設計的思維來想象。3gs上大概隻能(néng)顯示4-5行,4s就能(néng)顯示9-10行,而且每行會變得特别寬。但兩(liǎng)款手機其實是一樣(yàng)大的。如果照這(zhè)種(zhǒng)方式顯示,3gs上剛剛好(hǎo)的效果,在4s上就會小到根本看不清字。

在現實中,這(zhè)兩(liǎng)者效果卻是一樣(yàng)的。這(zhè)是因爲Retina屏幕把2x2個像素當1個像素使用。比如原本44像素高的頂部導航欄,在Retina屏上用了88個像素的高度來顯示。導緻界面(miàn)元素都(dōu)變成(chéng)2倍大小,反而和3gs效果一樣(yàng)了。畫質卻更清晰。
在以前,iOS應用的資源圖片中,同一張圖通常有兩(liǎng)個尺寸。你會看到文件名有的帶@2x字樣(yàng),有的不帶。其中不帶@2x的用在普通屏上,帶@2x的用在Retina屏上。隻要圖片準備好(hǎo),iOS會自己判斷用哪張,Android道(dào)理也一樣(yàng)。
由此可以看出,蘋果以普通屏爲基準,給Retina屏定義了一個2倍的倍率(iPhone 6plus除外,它達到了3倍)。實際像素除以倍率,就得到邏輯像素尺寸。隻要兩(liǎng)個屏幕邏輯像素相同,它們的顯示效果就是相同的。

Android的解決方法類似,但更複雜一些。因爲Android屏幕尺寸實在太多,分辨率高低跨度非常大,不像蘋果隻有那麼(me)幾款固定設備、固定尺寸。所以Android把各種(zhǒng)設備的像素密度劃成(chéng)了好(hǎo)幾個範圍區間,給不同範圍的設備定義了不同的倍率,來保證顯示效果相近。像素密度概念雖然重要,但用不著(zhe)我們自己算,iOS與Android都(dōu)幫我們算好(hǎo)了。

如圖所示,像素密度在120左右的屏幕歸爲ldpi,160左右的歸爲mdpi,以此類推。這(zhè)樣(yàng),所有的Android屏幕都(dōu)找到了自己的位置,并賦予了相應的倍率:
ldpi [0.75倍]
mdpi [1倍]
hdpi [1.5倍]
xhdpi [2倍]
xxhdpi [3倍]
xxxhdpi [4倍]
各型号iPhone的倍率比較簡單,我們後(hòu)面(miàn)會講到。那麼(me)Android手機那麼(me)多,具體怎麼(me)分?哪些手機是幾倍的倍率呢?我們先看一張表,這(zhè)是友盟2014年10月到2015年03月的數據:

就目前市場狀況而言,各種(zhǒng)手機的分辨率可以這(zhè)樣(yàng)粗略判斷。雖然不全面(miàn),但至少在1年内都(dōu)還(hái)有一定的參考意義:


ldpi 如今已絕迹,不用考慮
mdpi [320x480](市場份額不足5%,新手機不會有這(zhè)種(zhǒng)倍率,屏幕通常都(dōu)特别小)
hdpi [480x800、480x854、540x960](早年的低端機,屏幕在3.5英寸檔位;如今的低端機,屏幕在4.7-5.0英寸檔位)
xhdpi [720x1280](早年的中端機,屏幕在4.7-5.0英寸檔位;如今的中低端機,屏幕在5.0-5.5英寸檔位)
xxhdpi [1080x1920](早年的高端機,如今的中高端機,屏幕通常都(dōu)在5.0英寸以上)
xxxhdpi [1440x2560](極少數2K屏手機,比如Google Nexus 6)
自然地,以1倍的mdpi作爲基準。像素密度更高或者更低的設備,隻需乘以相應的倍率,就能(néng)得到與基準倍率近似的顯示效果。


不過(guò)需要注意的是,Android設備的邏輯像素尺寸并不統一。比如兩(liǎng)種(zhǒng)常見的屏幕480x800和1080x1920,它們分别屬于hdpi和xxhdpi。除以各自倍率1.5倍和3倍,得到邏輯像素爲320x533和360x640。很顯然,後(hòu)者更寬更高,能(néng)顯示更多内容。所以,即使有倍率的存在,各種(zhǒng)Android設備的顯示效果仍然無法做到完全一緻。


單位


不難發(fā)現,真正決定顯示效果的,是邏輯像素尺寸。爲此,iOS和Android平台都(dōu)定義了各自的邏輯像素單位。iOS的尺寸單位爲pt,Android的尺寸單位爲dp。說實話,兩(liǎng)者其實是一回事(shì)。
單位之間的換算關系随倍率變化:


1倍:1pt=1dp=1px(mdpi、iPhone 3gs)
1.5倍:1pt=1dp=1.5px(hdpi)
2倍:1pt=1dp=2px(xhdpi、iPhone 4s/5/6)
3倍:1pt=1dp=3px(xxhdpi、iPhone 6)
4倍:1pt=1dp=4px(xxxhdpi)
單位決定了我們的思考方式。在設計和開(kāi)發(fā)過(guò)程中,應該盡量使用邏輯像素尺寸來思考界面(miàn)。設計Android應用時,有的設計師喜歡把畫布設爲1080x1920,有的喜歡設成(chéng)720x1280。給出的界面(miàn)元素尺寸就不統一了。Android的小點擊區域尺寸是48x48dp,這(zhè)就意味著(zhe)在xhdpi的設備上,按鈕尺寸至少是96x96px。而在xxhdpi設備上,則是144x144px。
無論畫布設成(chéng)多大,我們設計的是基準倍率的界面(miàn)樣(yàng)式,而且開(kāi)發(fā)人員需要的單位都(dōu)是邏輯像素。所以爲了保證準确高效的溝通,雙方都(dōu)需要以邏輯像素尺寸來描述和理解界面(miàn),無論是在标注圖還(hái)是在日常溝通中。不要再說“底部标簽欄的高度是96像素,我是按照xhdpi做的”這(zhè)樣(yàng)的話了。


Web怎麼(me)辦


移動端頁面(miàn)的絕對(duì)單位仍然是px,至少代碼裡(lǐ)這(zhè)麼(me)寫,但它的道(dào)理也和app一樣(yàng)。由于像素密度是設備本身的固有屬性,它會影響到設備中的所有應用,包括浏覽器。前端技術可以善加利用設備的像素密度,隻需一行代碼,浏覽器便會使用app的顯示方式來渲染頁面(miàn)。根據像素密度,按相應倍率縮放。
可以通過(guò)這(zhè)個測試頁面(miàn) http://greenzorro.github.io/demo/basic/響應式斷點.html 來看看你的移動設備屏幕寬度,這(zhè)是邏輯像素寬度。
以iPhone 5s爲例,屏幕的分辨率是640x1136,倍率是2。浏覽器會認爲屏幕的分辨率是320x568,仍然是基準倍率的尺寸。所以在制作頁面(miàn)時,隻需要按照基準倍率來就行了。無論什麼(me)樣(yàng)的屏幕,倍率是多少,都(dōu)按邏輯像素尺寸來設計和開(kāi)發(fā)頁面(miàn)。隻不過(guò)在準備資源圖的時候,需要準備2倍大小的圖,通過(guò)代碼把它縮成(chéng)1倍大小顯示,才能(néng)保證清晰。


實際應用


大家關心的還(hái)是實際運用,畫布該怎麼(me)設置。我們就iOS、Android、Web三個平台來分别梳理一下。不過(guò)在這(zhè)之前,我要爲使用PS進(jìn)行設計的朋友介紹一個小技巧。

之前我說過(guò),我們要以邏輯像素尺寸來思考界面(miàn)。體現到設計過(guò)程中,就是要把單位設置成(chéng)邏輯像素。打開(kāi)PS的首選項——單位與标尺界面(miàn),把尺寸和文字單位都(dōu)改成(chéng)點(Point)。這(zhè)裡(lǐ)的點也就是pt,無論設計iOS、Android還(hái)是Web應用,單位都(dōu)用它。當然,各平台單位名稱還(hái)是要記住的。這(zhè)裡(lǐ)我們用的隻是它的原理,不用在意名稱。
要調節倍率,則通過(guò)圖像大小裡(lǐ)的DPI來控制。這(zhè)個DPI,其實就是PPI,像素密度。有個常識大家都(dōu)知道(dào),屏幕上的設計DPI設成(chéng)72,印刷品設計DPI設成(chéng)300。爲什麼(me)是這(zhè)兩(liǎng)個數字?
首先說300,這(zhè)和人眼的分辨能(néng)力有關。由于1英寸是固定長(cháng)度,每1英寸有多少個像素點決定了畫質清晰程度。之前說過(guò),這(zhè)就是像素密度,也就是DPI。DPI達到300以上,其細膩程度就會給人真實感,像真實世界中的物件。相反,DPI隻有10的話,在你一個食指指節大小的長(cháng)度内隻有10個像素,這(zhè)明顯就是馬賽克了。所以印刷品要設成(chéng)300,才能(néng)保證清晰。
再說72,這(zhè)有一定的曆史原因。早的圖形設計是在mac電腦上進(jìn)行的,mac本身的顯示器分辨率就是72。PS中把圖像DPI也設成(chéng)72,就能(néng)保證屏幕上顯示的尺寸和打印尺寸相同,便于設計。72的PC顯示器分辨率逐漸成(chéng)爲一種(zhǒng)默認的行業标準,這(zhè)套規則就這(zhè)麼(me)沿用下來。

現在回到正題,我們怎麼(me)通過(guò)DPI來調節倍率?既然屏幕本身的分辨率是72,DPI設成(chéng)72剛好(hǎo)是1倍尺寸,那設成(chéng)72的兩(liǎng)倍就是倍率爲2的屏幕了,就這(zhè)麼(me)簡單。
下面(miàn)來看看3個平台各自的畫布設置:

iPhone

iPhone的屏幕尺寸各不相同,我說的是邏輯像素尺寸,這(zhè)确實是讓人很頭疼的事(shì)情。如果想用一套設計涵蓋所有iPhone,就要選擇邏輯像素折中的機型。
從市場占有率數據來看,目前多的是iPhone5/5s的屏幕。倍率爲2,邏輯像素320x568。上升勢頭猛,未來有望登上第一的是iPhone 6的屏幕。倍率爲2,邏輯像素375x667。
按照這(zhè)兩(liǎng)種(zhǒng)尺寸來設計,都(dōu)是比較主流的做法。可以兼顧短一些的iPhone 4s,大一點的6 plus也不會過(guò)于空曠。

不過(guò)在切圖的時候要注意,由于iPhone 6 plus的3倍圖是由2倍圖放大而來,所以位圖要注意保證清晰。

Android

都(dōu)說Android碎片化嚴重,但它現在反而比iOS好(hǎo)處理。因爲如今的Android屏幕邏輯像素已經(jīng)趨于統一了:360x640,就看你設成(chéng)幾倍了。想以xhdpi爲準,就把DPI設成(chéng)72x2=144。想以xxhdpi爲準,就把DPI設成(chéng)72x3=216。
對(duì)于那些比較老的低端機,寬度是480px的那批,畫面(miàn)确實會小一些,顯示内容會更少。稍微留意一下,重要内容盡量保持在界面(miàn)中上部分。
當然,這(zhè)些機型不出一年就會被(bèi)邊緣化,基本淘汰。現在能(néng)運轉的也是當作功能(néng)機在用,軟件多了必卡無疑,用戶體驗無從談起(qǐ)。不作考慮也是OK的。

Web

手機端網頁就沒(méi)有統一标準了,比較流行的做法是按照iPhone 5的尺寸來設計。倍率2,邏輯像素320x568。
這(zhè)樣(yàng)的做法比較實在,倍率2的屏幕無論在iOS還(hái)是Android方面(miàn)都(dōu)是主流,而且又是2倍屏幕中邏輯像素小的。所以圖片的尺寸可以保持在較小的水平,頁面(miàn)加載速度快。當然,缺點就是在倍率3的設備上看,圖片不是特别清晰。
如果追求圖片質量,願意犧牲加載速度,那麼(me)可以按照大的屏幕來設計。也就是iPhone 6 plus的尺寸,倍率3,邏輯像素414x736。

總結

移動端的尺寸比PC端複雜,關鍵就在倍率。但也正因爲倍率的存在,把大大小小的屏幕拉回到同一水平線,得以保證一套設計适應各種(zhǒng)屏幕。站在這(zhè)條水平線的角度看,會發(fā)現它很好(hǎo)理解。


評論(0 條評論)
遊客

QQ咨詢

在線咨詢真誠爲您提供專業解答服務

咨詢熱線

0771-3805202
7*24小時服務熱線

微信交流

雲尚網站建設二維碼掃一掃添加微信
首頁
電話咨詢
短信咨詢
獲取報價
提供您的想法
點擊我,提交您的需求
00
:
30
隻需30分鍾
獲取報價及開(kāi)發(fā)方案