欧美精品免费观看二区/在线观看av/粉嫩国产精品14xxxxx/亚洲精品视频在线观看免费

什么是響應式網站設計
發布時間:2015-10-09

    響應式網站建設的概念


    Ethan Marcotte曾經在A List Apart發表過一篇文章“Responsive Web Design”,文中援引了響應式建筑設計的概念:


    更近出現了一門新興的學科——“響應式建筑(responsive architecture)”——提出,物理空間應該可以根據存在于其中的人的情況進行響應。結合嵌入式機器人技術以及可拉伸材料的應用,建筑師們正在嘗試建造一種可以根據周圍人群的情況進行彎曲、伸縮和擴展的墻體結構;還可以使用運動傳感器配合氣候控制系統,調整室內的溫度及環境光。已經有公司在生產“智能玻璃”:當室內人數達到一定的閥值時,這種玻璃可以自動變為不透明,確保隱私。


    將這個思路延伸到Web設計的領域,我們就得到了一個全新的概念。為什么一定要為每個用戶群各自打造一套設計和開發方案?和響應式建筑相似,Web設計同樣應該做到根據不同設備環境自動響應及調整。


    顯然,我們無法也無需使用運動傳感器或是機器人技術,響應式Web設計更多需要的是抽象思維。好在,一些相關的概念已經得到了實踐,比如液態布局、幫助頁面重新格式化的media queries和腳本等。但是響應式Web設計不僅僅是關于屏幕分辨率自適應以及自動縮放的圖片等等,它更像是一種對于設計的全新思維模式。


    調整分辨率


    不同的設備都有各自的屏幕分辨率、清晰度以及屏幕定向方式,不斷被研發著的各種新設備也將帶來新的屏幕尺寸規格。有些設備基于豎屏(portrait),有些是橫屏(landscape),甚至還有正方形;對于日益流行的iPhone、iPad及其他一些智能手機、平板電腦,用戶還可以通過轉動設備來任意切換屏幕的定向方式。怎樣才能做到讓一種設計方案滿足所有情況?




    要想做到同時兼容橫、豎屏(用戶還有可能在頁面加載的過程中切換方向),我們就必須考慮N種屏幕尺寸規格。誠然,我們可以將這些規格劃分為幾個大類,然后為每一類做一種方案,確保該方案至少在本組中盡量具有彈性。但即使這樣,結果也將是無比焦慮的,誰知道某類設備在5年之后的占有率是多少?而且很多用戶甚至不去將瀏覽器的窗口更大化;類似這樣的變數,我們還要考慮多少呢?


    Morten Hjerde和他的同事們對2005至2008年市場中的400余種移動設備進行了統計(查看報告),下圖展示了大致的統計結果:



    在08年之后,更多更有代表性的新設備問世并普及了。顯然,我們不可以沿著“多方案”的思路繼續走下去;那么我們應該怎樣做呢?


    部分解決方案:一切彈性化


    幾年前,彈性布局(flexible layout)幾乎是一種奢侈品,所謂彈性,也只是體現在豎排布局以及字號等方面;圖片始終可以輕易的破壞頁面結構,而且即使是哪些彈性的元素結構,在很極端的情況下,仍會破壞布局。所以,所謂的彈性布局其實并非那樣彈性,它有時甚至不能適應臺式機與筆記本的屏幕分辨率差異,更不用說手機等移動設備了。


    現在,我們可以通過響應式的設計和開發思路讓頁面更加“彈性”了。圖片的尺寸可以被自動調整,頁面布局再不會被破壞。雖然永遠沒有更完美的解決方案,但它給了我們更多選擇。無論用戶切換設備的屏幕定向方式,還是從臺式機屏幕轉到iPad上瀏覽,頁面都會真正的富有彈性。


    在前文提到的Ethan Marcotte的文章中,他通過一個實例展示了響應式Web設計在頁面彈性方面的特性:


    該實例的實現方式完美的結合了液態網格和液態圖片技術,并且聰明的在正確的地方使用了正確的HTML標記。“液態網格”是一種很常見的實踐方式;對于“液態圖片”技術,下面的文章做了不錯的介紹:

    Hiding and Revealing Portions of Images
    Creating Sliding Composite Images
    Foreground Images That Scale With the Layout


    說到創建液態頁面,更好看看Zoe Mickley Gillenwater的那本《Flexible Web Design: Creating Liquid and Elastic Layouts with CSS》,或是下載個樣章先:“怎樣創建彈性圖片”。另外,Zoe的這篇“Essential Resources for Creating Liquid and Elastic Layouts.”提供了不少關于創建彈性網格和布局的教程、資源、創意指導和更佳實踐方式。

    從技術角度講,雖然聽上去這些都簡單可行,但它比“將這些功能結合在一起”要復雜些。舉個例子,仔細觀察Ethan Marcotte提供的實例中的logo圖片:


    如果我們將瀏覽器窗口不斷調小,會發現logo圖片的文字部分始終會保持同比縮小,保證其完整可讀,而不會和周圍的插圖一樣被兩邊裁掉。所以整個logo其實包括兩部分:插圖作為頁面標題的背景圖片,會保持尺寸,但會隨著布局調整而被裁切;文字部分則是一張單獨的圖片。



    其中,<h1>元素使用插圖作為背景,文字部分的圖片始終保持與背景的對齊。


    這個實例小小的展示一下響應式Web設計的思路。不過這點小努力還不足以避免整個布局在小尺寸窗口中變的過窄或過短,并且logo文字更終會變的小到難以識別,背景圖片也會被過多的裁切。

    標簽: 上海網站設計 ,