用一篇文章,幫你看懂網(wǎng)頁響應(yīng)式布局原理

2020-8-21    資深UI設(shè)計(jì)者


今天分享一個(gè)很多設(shè)計(jì)師頭疼已久的問題,關(guān)于網(wǎng)頁響應(yīng)式布局原理和設(shè)計(jì)方法。文章主要包含三個(gè)部分:

  • 響應(yīng)式頁面是什么
  • 響應(yīng)式布局的規(guī)則
  • 響應(yīng)式的設(shè)計(jì)流程

所以廢話不多說,我們直接進(jìn)入正題吧!

響應(yīng)式頁面是什么

在過去,網(wǎng)站通常就是為了電腦大屏幕展示而設(shè)計(jì),如果用手機(jī)訪問,只能在巴掌大的屏幕里看縮小版的頁面。雖然還有手機(jī)專供的 WAP 頁面,但因?yàn)樘喡矡o濟(jì)于事。

用一篇文章,幫你看懂網(wǎng)頁響應(yīng)式布局原理

隨著智能手機(jī)、3G、4G、HTML5 的普及,使用手機(jī)訪問網(wǎng)站的人越來越多,為了讓用戶在手機(jī)上看到更合適的布局,且兼顧開發(fā)的效率,響應(yīng)式的概念就被提出了。

通俗解釋,就是通過一套代碼,可以無縫匹配符合電腦、平板、手機(jī)預(yù)覽效果的前端技術(shù)。比如下方 Nike 官網(wǎng),就是應(yīng)用了響應(yīng)式設(shè)計(jì)后在不同客戶端、分辨率下的效果。

用一篇文章,幫你看懂網(wǎng)頁響應(yīng)式布局原理

雖然響應(yīng)式的應(yīng)用越來越廣泛,但是從零開始去寫一個(gè)響應(yīng)式效果的網(wǎng)站對(duì)于程序員來講是非常復(fù)雜的,因?yàn)楫?dāng)中包含了大量的邏輯、判斷、適配內(nèi)容。

所以,今天市面上看見的響應(yīng)式網(wǎng)站,多數(shù)使用了一些開源的代碼或者框架。而應(yīng)用最廣泛的,就數(shù) Bootstrap 了。

用一篇文章,幫你看懂網(wǎng)頁響應(yīng)式布局原理

之所以提這個(gè),是因?yàn)榧热婚_發(fā)使用了別人寫的框架,那么對(duì)于我們的設(shè)計(jì)稿也就上了緊箍咒,我們需要根據(jù)框架的要求來設(shè)計(jì)界面,這會(huì)稍后具體解釋。

還有個(gè)問題,就是為了實(shí)現(xiàn)平板、手機(jī)和電腦不同的預(yù)覽效果,并不是只有響應(yīng)式布局一種技術(shù),還有另一種技術(shù) —— 自適應(yīng)。

通俗點(diǎn)說,自適應(yīng)就是為不同客戶端分別提供一套獨(dú)立的前端代碼,和響應(yīng)式使用一套代碼適配多種客戶端不同。

響應(yīng)式適合應(yīng)用在一些簡單的官網(wǎng)、展示類頁面,展示的內(nèi)容大致相同。而自適應(yīng)適合應(yīng)用在需要在不同客戶端類型有較大差異的網(wǎng)站,這樣只使用一套前端代碼就完全行不通了。

比如愛奇藝的官網(wǎng),為了符合用戶體驗(yàn),在移動(dòng)端網(wǎng)頁布局中精簡替換了大量的內(nèi)容,和電腦版已經(jīng)沒有太直接的聯(lián)系了。

用一篇文章,幫你看懂網(wǎng)頁響應(yīng)式布局原理

兩種做法并沒有好壞之分,只有適不適合項(xiàng)目之別。了解了它們的不同,我們就可以進(jìn)一步學(xué)習(xí)響應(yīng)式的規(guī)則了。

響應(yīng)式布局的規(guī)則

響應(yīng)式布局的規(guī)則并不是特別復(fù)雜,只要注意兩個(gè)問題:

  • 分段響應(yīng)規(guī)則
  • 組件寬度適應(yīng)

1. 分段響應(yīng)規(guī)則

敲黑板,響應(yīng)式的響應(yīng),面向的核心對(duì)象是瀏覽器窗口的寬度,而不是設(shè)備類型。所以打開使用響應(yīng)式的網(wǎng)站,我們通過改變?yōu)g覽器的寬度,就可以看見不同的展示效果,比如下圖的星巴克官網(wǎng)。

用一篇文章,幫你看懂網(wǎng)頁響應(yīng)式布局原理

我們可以發(fā)現(xiàn),瀏覽器寬度每達(dá)到一個(gè)數(shù)值(Breakpoint)的時(shí)候,頁面的排版和樣式就會(huì)發(fā)生明顯的變化,而這就是響應(yīng)式設(shè)計(jì)最重要的功能 —— 分段展示。

用一篇文章,幫你看懂網(wǎng)頁響應(yīng)式布局原理

也就是說,響應(yīng)式規(guī)則就是為頁面分配不同的寬度區(qū)間,每個(gè)區(qū)間有各自展示的樣式,用來應(yīng)對(duì)不同的場景和設(shè)備類型,常見的適配區(qū)間大致如下:

包含圖片截圖 320-800 :移動(dòng)端收集屏幕 800-1200:平板或上網(wǎng)本屏幕 1200-無窮:一般的電腦顯示器

面對(duì)分段式的布局、樣式變更,我們就要關(guān)注到底發(fā)生了哪些變化。總結(jié)起來,可以簡單的歸納成三種組件的調(diào)整:內(nèi)容增減、布局調(diào)整、樣式調(diào)整。

第一種,內(nèi)容增減。即部分模塊在不同的分段內(nèi)會(huì)有顯示和隱藏的狀態(tài),尤其是一些網(wǎng)頁端的內(nèi)容覺得在小屏幕上展示會(huì)太多了,就在小屏幕場景中隱藏掉。

用一篇文章,幫你看懂網(wǎng)頁響應(yīng)式布局原理

第二種,布局調(diào)整。主要是模塊的排列和順序發(fā)生變化,常見的就是模塊一行的列數(shù)發(fā)生改變。

用一篇文章,幫你看懂網(wǎng)頁響應(yīng)式布局原理

第三種,樣式變更。即針對(duì)不同的分段設(shè)計(jì)完全不一樣的樣式,最多應(yīng)用在導(dǎo)航欄的設(shè)計(jì)中,會(huì)為最小的分段使用 iOS 的 Tabbar 或安卓的 Menu 樣式。

用一篇文章,幫你看懂網(wǎng)頁響應(yīng)式布局原理

所以,歸納起來,就是頁面針對(duì)不同的分段展示不同的結(jié)果,即頁面中的組件觸發(fā)了對(duì)應(yīng)的變化類型。每個(gè)組件都可以應(yīng)用不同的變化類型,而無需進(jìn)行統(tǒng)一。

2. 組件寬度適應(yīng)

分段式響應(yīng),是響應(yīng)式布局的第一層邏輯。而在觸發(fā)關(guān)鍵值(Breakpoint) 之間的區(qū)間,我們拖動(dòng)窗口的寬度,會(huì)發(fā)現(xiàn)組件的寬度也隨之改動(dòng),這就是 —— 組件寬度適應(yīng)。

組件寬度適應(yīng)在手機(jī) UI 的適配中非常重要,即完成不同屏幕寬的手機(jī)適配所應(yīng)用的邏輯,所下面我們簡單講講它的規(guī)則。

組件的寬度適應(yīng)模式主要有兩種類型,一種是容器寬度適應(yīng),一種是容器比例縮放,比如下面的圖例。

用一篇文章,幫你看懂網(wǎng)頁響應(yīng)式布局原理

用一篇文章,幫你看懂網(wǎng)頁響應(yīng)式布局原理

容器是一個(gè)比較抽象的概念,類似設(shè)計(jì)軟件中的編組,它集合了所有下級(jí)元素,但本身并沒有實(shí)際的內(nèi)容和樣式。在響應(yīng)式規(guī)則中,下級(jí)元素并不會(huì)和這個(gè)容器等比變動(dòng),出現(xiàn)下面這種錯(cuò)誤的效果。

用一篇文章,幫你看懂網(wǎng)頁響應(yīng)式布局原理

正確做法是會(huì)定義下級(jí)元素針對(duì)父容器的響應(yīng)方法,做到容器變更的同時(shí)其自身的顯示也是合理的。比如相對(duì)容器左右間距一致、對(duì)齊方向一致、尺寸固定等設(shè)置。

用一篇文章,幫你看懂網(wǎng)頁響應(yīng)式布局原理

而這種規(guī)則的設(shè)置,就是 Sketch/Figma/XD 中的響應(yīng)式設(shè)置功能。只要設(shè)置得當(dāng),就可以獲得一樣的寬度適應(yīng)效果。

用一篇文章,幫你看懂網(wǎng)頁響應(yīng)式布局原理

如果對(duì)軟件響應(yīng)式功能了解不全面的同學(xué),就可以自己多搜索一下對(duì)應(yīng)的說明,我就不在這里過多的展開了。

再總結(jié)一下,響應(yīng)式的規(guī)則就是頁面組件先遵循當(dāng)前分段展示的布局效果,并在這個(gè)區(qū)間內(nèi)支持小范圍寬度的變更和適應(yīng)。

響應(yīng)式的設(shè)計(jì)流程

響應(yīng)式設(shè)計(jì)是一種源自技術(shù)的概念,而不是單純的設(shè)計(jì)風(fēng)格、方法,所以設(shè)計(jì)響應(yīng)式設(shè)計(jì)其實(shí)就是 「面向編程設(shè)計(jì)」。

設(shè)計(jì)界面要吻合編程的真實(shí)方法和需求,而不是根據(jù)我們想怎么做就怎么做,所以整個(gè)流程不能只站在設(shè)計(jì)師自身的角度考慮,而要和前端程序員緊密溝通,首先確定響應(yīng)幾個(gè)寬度區(qū)間,以及它們對(duì)應(yīng)的數(shù)值分別是多少。

然后我們就要完成對(duì)應(yīng)數(shù)量頁面的設(shè)計(jì),因?yàn)榍懊嫖覀冋f過,分段響應(yīng)規(guī)則中會(huì)有明顯的樣式變動(dòng),這就要求設(shè)計(jì)師是一定要給出設(shè)計(jì)示例的,而不能依靠口頭描述或程序員自由發(fā)揮。

用一篇文章,幫你看懂網(wǎng)頁響應(yīng)式布局原理

完成這些設(shè)計(jì)稿以后,我們再進(jìn)一步確定同一個(gè)區(qū)間內(nèi),組件的寬度適應(yīng)規(guī)則是什么樣的。多數(shù)情況下,這個(gè)階段使用口述就可以,如果規(guī)則比較多,那么就可以在標(biāo)注階段把你要實(shí)現(xiàn)的效果記錄上去即可。

全部設(shè)計(jì)稿和規(guī)則都溝通完畢以后,才進(jìn)入切圖導(dǎo)出的階段。要提醒一次,在一些特殊的情況下,響應(yīng)式的背景切圖會(huì)和普通頁面的背景切法不一樣,盡可能讓前端程序員檢查一遍導(dǎo)出的文件。

只要根據(jù)上述的流程,在遇到不確定或者不清楚的情況,就和前端程序員做溝通,那么很快就可以將項(xiàng)目輸出出來。

結(jié)尾

響應(yīng)式這個(gè)概念雖然高大上,但并不是任何項(xiàng)目都要無腦往上套的。因?yàn)榭蚣芤?guī)則上的限制,導(dǎo)致我們很難在響應(yīng)式頁面中使用一些特別復(fù)雜、高級(jí)的視覺樣式,導(dǎo)致最終呈現(xiàn)的效果往往非常簡單或者過度依賴圖片的質(zhì)量。

所以,如果在功能較為復(fù)雜或需要復(fù)雜視覺支撐的網(wǎng)頁中,就可以選擇應(yīng)用固定頁面內(nèi)容寬度的設(shè)計(jì)來完成。

文章來源:優(yōu)設(shè)    作者:超人的電話亭

藍(lán)藍(lán)設(shè)計(jì)www.bouu.cn )是一家專注而深入的界面設(shè)計(jì)公司,為期望卓越的國內(nèi)外企業(yè)提供卓越的UI界面設(shè)計(jì)、BS界面設(shè)計(jì) 、 cs界面設(shè)計(jì) 、 ipad界面設(shè)計(jì) 、 包裝設(shè)計(jì) 、 圖標(biāo)定制 、 用戶體驗(yàn) 、交互設(shè)計(jì)、 網(wǎng)站建設(shè) 平面設(shè)計(jì)服務(wù)


分享本文至:

日歷

鏈接

個(gè)人資料

存檔