響應式WEB設計

近期在學習有關響應式設計的內容,對此作了些整理,圖片來源於網絡,附上本身作的簡單demo,沒有js,只用CSS作了簡單的搭建http://y.zhso.net/。javascript

一、爲何須要響應式web設計css

  出於對人力物力財力的節省和對生活富有詩意的一種追求。html

  因爲目前移動設備的大量使用,以及PC顯示器的尺寸逐漸出現較大差異,傳統的web頁面已經不能知足多種設備的瀏覽效果,好比傳統頁面在大瀏覽器中會有較大的空白區域,而在小瀏覽器已經移動設備中,不能徹底顯示頁面,或是將頁面縮小至適應移動設備尺寸大小,不能正常瀏覽,對於點擊觸點也有影響,不少人會選擇放大頁面,在進行瀏覽,這樣整個頁面就須要不停的拖動,給用戶的體驗很差。前端

  簡而言之,有以下幾點:html5

  •   各類屏幕尺寸
  •   各類操做系統
  •   各類訪問設備
  •   各類需求


二、什麼是響應式web設計java

  一個網站兼容多個終端。web

  •   一樣的代碼
  •   經過設備適配
  •   知足不一樣的訪問設備
  •   能展示出不一樣的效果
  •   始終內容優先
  •   移動設備優先:不引人注目的js和逐漸加強
  •   基於瀏覽器:特性活設備探測的逐漸加強

三、響應式設計的替代方案chrome

  開發針對網站的、徹底獨立的移動版本,開發移動應用APP。但這樣作也存在必定的不足:瀏覽器

  •   開發獨立版本的網頁,能夠經過設備適配進行跳轉,須要維護多個頁面,對於首頁級別頁面適用,不適用於內容頁
  •   開發移動應用,開發成本高,不利於搜索引擎收錄

四、響應式web設計的優點&不足網絡

  優點:

  •   多終端視覺和操做體驗風格統一
  •   開發、維護、運營成本低
  •   不一樣設備間的兼容性強
  •   操做靈活:響應式設計是針對頁面的,能夠只對必要的頁面部分進行改動
  •   對用戶友好:用戶能夠與網站一直保持聯繫,好比URL不變
  •   積累分享:經過單一的URL地址收集全部的社交分享連接
  •   最佳化搜索引擎:能夠完成移動網站和桌面網站的鏈接
  •   無重定向:包含無用戶代理定向

  不足:

  •   兼容性:低版本瀏覽器可能存在不兼容問題
  •   移動帶寬流量:相比移動版定製網站,流量稍大
  •   加載須要必定的時間:在響應式設計中,須要下載一些看起來並沒必要要的HTML、CSS。除此以外,圖片並無根據設備調整到合適大小,而這正式致使加載時間加倍的緣由
  •   優化搜索引擎:對於響應式web設計,爲搜索引擎肯定關鍵字不是一件容易的事。所以相比通常的桌面用戶,移動用戶多采用不一樣的關鍵字,修改標題及其餘事項都比較困難
  •   Google排名:若是響應式網站僅基於移動內容,它困難會影響到網站的Google排名。由於Google不支持這樣的網站,它不會對你的網站進行索引
  •   時間花費:開發響應式網站是一項耗時的工做。若是你計劃把一個現有的網站轉化成響應式網站,可能耗時更多。若是你想要一個響應式網站,最好從草圖開始從新設計
  •   佈局:響應式web設計的佈局主要是液態的,這也正是設計者對設計樣式很差控制的緣由。並且眼下正是設計者提早展現各類「複製品」的時候。設計者試圖針對移動和桌面佈局分別顯示線框和設計原型。只有等到這兩種佈局均獲得提升後,響應式web設計策略才能真正實現。

五、響應式與自適應的區別

  響應式佈局:流體網絡

  •   網頁的佈局改變
  •   從新排布
  •   更好的用戶體驗
  •   測試難度大

  自適應佈局:固定斷點

  •   網頁的徹底縮放
  •   實施代價低
  •   測試容易
  •   設計更加可控

六、移動終端屏顯元素

  移動設備瀏覽器內核:Trident(IE)、Gecko(FF)、Presto(opera,已廢棄)、Webkit(Safari、chrome)、Blink(google)

  移動設備的尺寸:iPhone(980),iPad(1024),Android(分辨率480*800狀況下,980),WinPhone(1024)等

  移動設備的分辨率:

  

  

  Viewport:經過Viewport把本身冒充成更寬的屏幕
  <meta name=「viewport」 content=「width=device-width」>

七、響應式web設計流程

  用戶研究與設備規格預估

  

  框架原型規劃&測試

  

  視覺設計:須要保證內容文字的可讀性、控件可點擊區域的面積等

  

  前端構建:與傳統的web開發相比,響應式設計的頁面因爲頁面佈局、內容尺寸發生了變化,因此最終的產出更有可能與設計稿出入較大,須要前端開發人員和設計師多溝通

  

 

*Media Queries

  • Max Width:可視區域的寬度小於某尺寸時被應用 @media screen and (max-width: 600px){},也能夠經過link外部文件實現<link rel="stylesheet" media="screen and (max-width: 600px)" href="xxx.css">
  • Min Width:可視區域的寬度大於某尺寸時被應用 @media screen and (min-width: 900px){}
  • Multiple Media Queries:可視區域的寬度在600px和900px之間的時候被應用 @media screen and (min-width: 600px) and (max-width: 900px){}
  • Device Width:在某尺寸的設備上被應用 @media screen and (max-device-width: 480px){}
  • For iPhone 4:<link rel="stylesheet" media="only screen and (-webkit-min-device-pixel-ratio:2)" href="iphone4.css">
  • For iPad:可使用media query在iPad上檢測橫豎屏的方向,portrait(豎屏) or landscapse(橫屏)@media all and (orientation: portrait){}
  • Media Queries for IE:IE8及如下版本不支持CSS3 Media Queries,能夠經過使用javascript來進行彌補

 

 

PS:Js框架Modernizr:http://www.modernizr.com ,用於向缺乏HTML5/CSS3特性支持的瀏覽器打補丁

  http://www.html5cn.org/article-8610-1.html,該文章講述了10個響應式網頁製做技巧,感興趣的話能夠看看哦

相關文章
相關標籤/搜索