漫談響應式網頁設計

羅小胖發表於2014-06-30

漫談響應式設計
1. 如何理解響應式設計(RWD)
學究一些,首先大家先了解一下響應,然後再講一下設計,響應就是我發出的請求能得到什麼樣子的回覆,比如我說“你好”,你會很容易的給我回復“你好”,因為大家都是中國人,如果我說“hello”,我們這代人如果上過初中,他也會給我說“Hello”,但是如果我給對你說“Bonjour”,那可能只有高配的人才可能知道了。這裡面,就舉了一個例子,我的應答物件就相當於我們要講的響應式的裝置,他必須能夠解析我發給他的需求。然後我們們再講一下設計,設計的官方解釋是這樣的:
1.設下計謀。
2.根據一定要求﹐對某項工作預先制定圖樣﹑方案。
3.指搞設計工作的人。
直白的講,設計其實就是設了一個計,來完成我們的需要的工作目標。
從前面我們講的響應可以看到,響應是雙方的,是互動的過程,在這個過程中我們要考慮雙方的承受能力,比如我們總不能讓小孩子扛大包。在我們們網頁設計方面就是我們們要考慮裝置的效能,從網速、Dom 節點數量、螢幕的大小等等,如果我們從前後端結合,對小孩子給糖果,給苦力大包,那樣就做到了響應式。
但是,我下面講的響應式是狹隘的,我們只是從 Web Builder 這一層做到了響應式。
什麼是響應式設計

2.響應式設計中的介面設計
響應式設計中的介面設計對於介面設計,我們以前針對桌面產品的設計可能就是一個尺寸的,每個模組的位置比較固定,但是在響應式設計中,這些東西就改變了,設計師會根據產品的需要設計多個版本的設計,在這些不同的版本中,模組A在1024的寬度下,可能會是黑色背景,但是到了768下面可能會變成白色背景,實現了在不同寬度的不同展現。這裡面顏色、背景、寬高等都可改變,但是有一點我們需要注意的是 DOM 節點的順序最好保持一致,因為在響應式的頁面中,我們會使用流式佈局,在固定版式通過絕對定位或者外邊距負值的方式改變DOM 順序和視覺順序的技巧,在這裡可能並不適用。

3.針對媒體查詢的斷點
我們知道,我們通過媒體查詢(Media Query)的方式改變網頁的佈局,我們在哪些寬度下改變佈局,也就是我們所稱作的斷點,我們更習慣的思維是針對某些裝置(比如桌面、平板電腦、手機)的資料來設定斷點,比如 1024 對應桌面、768對應pad、480 對應手機,但實際上,這些東西是靠不住的,因為這些螢幕尺寸會根據時代的發展不斷的變化,我們的響應不應該只針對某些裝置,我們需要的是一個區間值,而不是將某一解析度對應一種裝置。斷點肯定是需要有的,那這些斷點是如何設定的呢?怎麼才能不是為了斷點而斷點呢?實際上,這些斷點的設定都是根據內容的需要做的,當我們的內容在達到一個臨界點後,視覺效果不符合人們的審美或影響了內容獲取時,這就是我們需要的斷點。但是我們可能無法在視覺設計的階段就能覆蓋其尺寸區間內容所有狀況,這樣我們就需要把它和現有的裝置相結合確立斷點。
因此,個人認為不同的專案,在響應式設計中需要的斷點是不一樣的。我們知道在媒體查詢中有 width 和 device-width 兩個特性,因為在手持裝置中多數用到的是 webkit 核心的瀏覽器,我們一般會通過 viewport 的屬性,將裝置寬度賦予視窗的寬度
這樣我們就能根據裝置的寬度來對某些裝置做媒體查詢了。
@media screen and (max-device-width:480px){ selector{ } }響應式設計中的介面設計

4.互動上的那些不同
在響應式設計中,我們不僅要考慮以前桌面使用者的使用習慣,也必須兼顧不同尺寸的手持裝置。比如大家在PC上習慣使用的浮層在某些小尺寸的裝置上就沒法使用了,就像我們下圖中看到的。而且一些響應區域小的連結也不方便我們使用手指來操作,因此我們可以做到“求同存異”。比如我們根據螢幕的尺寸,來決定是否使用浮層、或者增大操作區域、或者“整齊劃一”。比如在新浪視訊專案區別裝置來使用浮層,將所有的連結的操作區域做成方便手指操作的大小。
謹慎使用浮層可觸控區域
5. 具體專案開發流程

5-1. 產品策略與資訊架構
在我們介入具體專案開發流程前,我們應該已經確認了自己產品所面向的內容消費群體,以及潛在目標使用者,比如簡單的只面向小螢幕的移動使用者群或者我們要囊括所有的顯示裝置(mobile、pad、pc等等)。
當我們確定目標使用者的內容消費習慣的同時,我們應該也對他們的訪問習慣、時段等等做一些初步分析。這不僅僅面向一個響應式站點,這對產品定位到開發都有決策作用。
在移動部落格專案前期的產品分析中我們能看到,隨著時代的前進使用者內容的消費習慣也在發生著變化。
訂閱發展趨勢而訂閱裝置的變化是在從PC迅速的向phone、pad進化,所以我們更有必要提高移動裝置的閱讀體驗來提供面向移動使用者的響應式站點。
當我們確定了以上的群體以及習慣後我們就要針對這類群體對產品自身做架構調整了。產品架構或者內容架構在不同使用者不同裝置間影響著內容資訊的可用性和可尋性,並且響應式一定會在不同解析度不同裝置上對頁面中的模組重新調整,以符合不同模組在不同裝置中所符合的優先順序

5-2. 響應式產品設計
響應式設計是從產品角度來進行的設計,在這個階段我們需要產品經理、互動設計師、設計師以及工程師共同介入了。我們需要打破傳統的思維模式去思考設計,從純粹傳統的Web向移動應用過度。通過我們第一步明確的資訊架構,來從最小螢幕的移動裝置做產品設計,在移動裝置中拋棄更多的使用干擾,保證核心功能的最優體驗;同時互動與設計師的介入處理如何把模組設計的更小更有彈性,並初步確定設計風格、設計框架等方案;而工程師需要在產品經理與設計師確定的方案中進行程式碼測試,充分利用不同裝置獨有的特性並進行框架搭建。

5-3. 響應式開發
雖然在上一步我們提到從最小螢幕的移動裝置做產品設計,但實際不論是設計師還是工程師都是從最複雜的桌面端開始,把表現最豐富最複雜的功能實現,做減法對結構的改動會適當的減少。
移動部落格專案的前期開發其實是一個與產品、互動和設計師邊測試邊溝通邊確認不斷迴圈的過程,因為在不同的裝置中內容的呈現及某些特性的支援都不同,有些是與我們的預期有出入的。
對我們頁面製作工程師而言,在只有桌面端的時候,我們面向的設計稿是單一的,但是到了響應式設計,這種情況就改變了,雖然說我們可以讓設計師根據我們產品的受眾總結的螢幕寬度斷點給予幾個版本的設計稿,但是這些設計稿並不能覆蓋我們使用者的所有裝置情況,比如我們縮放瀏覽器的時候,從1024到320之間,包含了太多不同解析度的裝置。因此,在此開發過程中我們需要不斷的和設計師溝通在設計稿無法覆蓋情況下的特殊狀況。
相關閱讀
評論(1)

相關文章