html5/css3響應式布局介紹及設計流程
html5/css3響應式布局介紹及設計流程,利用css3的media query媒體查詢功能。移動終端一般都是對css3支持比較好的高級瀏覽器不需要考慮響應式布局的媒體查詢media query兼容問題
一、響應式頁面布局的概念
響應式布局是Ethan Marcotte在2010年5月份提出的一個概念,簡而言之,就是一個網(wǎng)站能夠兼容多個終端——而不是為每個終端做一個特定的版本。這個概念是為解決移動互聯(lián)網(wǎng)瀏覽器而誕生的。
二、響應式布局的優(yōu)勢
響應式布局可以為不同終端的用戶提供更加舒適的界面和更好的用戶體驗,而且隨著目前大屏幕移動設備的普及,用“大勢所趨”來形容也不為過。隨著越來越多的設計師采用這個技術,我們不僅看到很多的創(chuàng)新,還看到了一些成形的模式。
一個普通的自適應顯示的三欄網(wǎng)頁,當你用不同的終端來查看這個頁面的時候,他會根據(jù)幾種終端來顯示不同的樣式,在電腦上是三列,在pad上應該也是 三列,在大屏手機上是三行,在屏幕小于320的手機上只顯示主要內容,隱藏掉了次要元素。(這里關于響應式布局還有個比較好的消息,就是拖動瀏覽器也可以 觸發(fā)判斷條件,測試的時候你不需要去找一堆手機,只要把自己的瀏覽器窗口縮小到一定尺寸就可以了。)
我們認識下media query屬性吧。
@media screen and(min-width: 320px) and (max-width : 479px)
就從這個條件語句開始介紹,media屬性后面跟著的是一個 screen 的媒體類型(上面說過的十種媒體類型之一)。然后用 and 關鍵字來連接條件(其他關鍵字還有 not, only,看字面大家能理解,就不多說。),然后括號里就是一個媒體查詢語句,稍微懂點css的同學都能看懂,這個條件語句意思是在大于320小于479 的分辨率下所激活的樣式表。
這個語句,就是響應式布局的基礎應用了。在判斷終端分辨率大小之后,賦予不同的樣式進去,就像我們的例子里
@media screen and(max-width : 320px){
body{...}
}
@media screen and(min-width: 800px) and (max-width: 1024px){
body{...}
}
至于要判斷多少種分辨率,完全取決于你產(chǎn)品的需求,常見的分辨率有手機,平板(注意這些終端是存在 橫屏 豎屏 區(qū)別的,這個下一篇里提),桌面顯示器。自己為自己所面對的終端定制樣式。
一般大于960的顯示器都可以用默認樣式而不必在媒體查詢里判斷了。有一種情況除外,就是高像素比的終端,比如 iphone4以上的retina屏,一個iphone5的小小的屏幕(iphone的屏幕是真小啊),他的分辨率竟然達到了1136*640,幾乎等于 一個筆記本的分辨率。你在這樣小的物理顯示界面打開一個網(wǎng)頁,他用1136的分辨率來顯示,結果就是所有元素小的可憐。
在面對這種分辨率精細的終端,我們有另外一個條件查詢語句device-pixel-ratio。
比如例子里的
@media only screen and(-moz-min-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio:2/1), only screen and (-webkit-min-device-pixel-ratio: 2), only screen and(min-device-pixel-ratio: 2)
就是判斷終端的像素比是2的話,所渲染的樣式。iphone4以上像素比是2,高分辨率Andriod設備像素比是1.5,例子里只有像素比為2的查詢,1.5的或者其他比例方法一樣,前面用的是幾種瀏覽器的私有屬性,最后一種是通用屬性,
@media only screen and(-moz-min-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio:2/1), only screen and (-webkit-min-device-pixel-ratio: 2), only screen and(min-device-pixel-ratio: 2)
等于
@media only screen and(min-device-pixel-ratio: 2)
為了一些版本的兼容性,不得已寫的長了。
body{
font-size:24px;
}
.box2{
background: url(d/20.png)#ccc;
background-size:50%;
}
在像素比為2的終端里這樣寫的目的,就是讓他顯示的更容易識別,一般來說顯示一張1px的背景圖片,我們要準備一張2px的,然后再background-size:50%這樣。1.5像素比同例。
比如上面的demo,如果你用iphone4以上的蘋果手機來看,中間的背景圖片應該是顯示“2.0像素比”。
這里也暴露了響應式一個很大的缺點:需要多做若干背景圖(作為內容顯示的圖片暫時無視,彈性圖片與彈性字體,下次單獨寫一篇介紹博文介紹)。
對于media query的兼容性,我想不是很重要,因為很少有終端自帶IE9以下的瀏覽器。基本都是高級瀏覽器。如果特殊需要,可以下載一個兼容的JS文件
以條件注釋的方式加在文件里。
html5/css3響應式頁面的設計流程
第一步:確定需要兼容的設備類型、屏幕尺寸
通過用戶研究,了解用戶使用的設備分布情況,確定需要兼容的設備類型、屏幕尺寸。
設備類型:包括移動設備(手機、平板)和pc。對于移動設備,設計和實現(xiàn)的時候注意增加手勢的功能。
屏幕尺寸:包括各種手機屏幕的尺寸(包括橫向和豎向)、各種平板的尺寸(包括橫向和豎向)、普通電腦屏幕和寬屏。
需要考慮的問題:
某個頁面進行響應式設計時其適用的尺寸范圍是哪些?比如,1688搜索結果頁面,跨度可以從手機到寬屏,而1688首頁,由于結構過于復雜,想直接遷移到手機上,不太現(xiàn)實,不如直接設計一個手機版的首頁。
結合用戶需求和實現(xiàn)成本,對適用的尺寸進行取舍。比如一些功能操作的頁面,用戶一般沒有在移動端進行操作的需求,沒有必要進行響應式設計。
第二步:制作線框原型
針對確定下來的幾個尺寸分別制作不同的線框原型,需要考慮清楚不同尺寸下,頁面的布局如何變化,內容尺寸如何縮放,功能、內容的刪減,甚至針對特殊的環(huán)境作特殊化的設計等。這個過程需要設計師和前端開發(fā)人員保持密切的溝通。
第三步:測試線框原型
將圖片導入到相應的設備進行一些簡單的測試,可幫助我們盡早發(fā)現(xiàn)可訪問性、可讀性等方面存在的問題。鄭州悅美整形美容醫(yī)院 www.ymzxyy.cn
第四步:視覺設計
注意,移動設備的屏幕像素密度與傳統(tǒng)電腦屏幕不一樣,在設計的時候需要保證內容文字的可讀性、控件可點擊區(qū)域的面積等。鄭州展覽公司 www.zongchi.net
第五步:前端實現(xiàn)
與傳統(tǒng)的web開發(fā)相比,響應式設計的頁面由于頁面布局、內容尺寸發(fā)生了變化,所以最終的產(chǎn)出更有可能與設計稿出入較大,需要前端開發(fā)人員和設計師多溝通。
聲明:免責聲明:本文內容由互聯(lián)網(wǎng)用戶自發(fā)貢獻自行上傳,本網(wǎng)站不擁有所有權,也不承認相關法律責任。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內容,請發(fā)
送郵件至:operations@xinnet.com進行舉報,并提供相關證據(jù),一經(jīng)查實,本站將立刻刪除涉嫌侵權內容。本站原創(chuàng)內容未經(jīng)允許不得轉載,或轉載時
需注明出處:新網(wǎng)idc知識百科