一、什么是響應式網(wǎng)站:
現(xiàn)在,隨著智能手機手機的普及,站長們發(fā)現(xiàn),從手機上來的流量一點不比在PC上來的少,所以,作為一種能夠自動適應不同屏幕尺寸的網(wǎng)頁設計辦法,響應式設計(Responsive Design)正日益成為*受推崇的移動網(wǎng)頁優(yōu)化方式。今天北斗網(wǎng)絡就跟大家分享一下設計響應式網(wǎng)站的哪些些事?希望對大家有所幫助。 網(wǎng)站響應式設計的原理就是在CSS中,有一個不常用到的屬性media。為了達到響應式設計的目的,讓css根據(jù)屏幕寬度(例如 media screen only @(max-width:480px)),使用不同的CSS代碼,從而達到自動調(diào)整頁面DIV寬度的目的。當然,除了CSS,還可以使用JS對頁面內(nèi)容進行動態(tài)的調(diào)整,不過這個技術不是很流行。在網(wǎng)站開發(fā)過程中根據(jù)用戶行為以及設備環(huán)境進行相應的操作和布局,使網(wǎng)站可針對不同平臺、尺寸和定向進行智能化調(diào)整,實現(xiàn)了在智能手機和平板電腦等多種智能移動終端瀏覽效果的流暢,防止頁面變形,并可在任一瀏覽終端進行網(wǎng)站數(shù)據(jù)的同步更新。
二、為什么要采用響應式設計開發(fā)網(wǎng)站:
如果你還對網(wǎng)站是否需要實現(xiàn)響應式設計存在質(zhì)疑的話,相信下面的9點會讓您會更加認可網(wǎng)站實現(xiàn)響應式布局的必要性。
1、86%的用戶認為企業(yè)的手機網(wǎng)站也應該好看。
2、智能手機用戶的數(shù)量在2014年已經(jīng)超過PC端的用戶數(shù)量。
3、73%的用戶會同時使用多種設備(或者他們有智能手機)。
4、49%的用戶稱:如果企業(yè)的手機網(wǎng)站做的不夠好,往往會給人不重視用戶體驗的錯覺。
5、74%的智能手機擁有者之用手機上網(wǎng)。
6、49%的手機用戶認為企業(yè)的移動網(wǎng)站還有改進的空間。
7、據(jù)統(tǒng)計目前有17%的網(wǎng)絡流量都來自于手機。
8、68%的網(wǎng)民表示,更喜歡用手機在那些用戶友好度高的電商網(wǎng)站平臺上進行購物。
9、67%的移動設備用戶反應移動網(wǎng)站的加載速度有待提高,響應式設計的普及迫在眉睫!
總結:隨著越來越多的智能移動設備( 手機,平板 )加入到互聯(lián)網(wǎng)中來,互聯(lián)網(wǎng)上的訪問設備是爆炸性的增長(屏幕的分辨率也是爆炸性的增長)。為了給手機和平板設備提供更好的體驗,必須在網(wǎng)站設計中使用響應式網(wǎng)站設計,并且整合從PC端到手機的各種屏幕尺寸和分辨率,用技術來使網(wǎng)頁適應不同分辨率的屏幕。
三、設計響應式網(wǎng)站的難點有哪些?
1、響應式網(wǎng)站設計難
因為不能使用絕對定位,那么在設計的時候需要考慮可讀性以及區(qū)域面積以及在不同的設備下的行為。這對一般的設計師來說簡直是一場災難。所以很少有出眾的響應式網(wǎng)站出現(xiàn)。
2、響應式網(wǎng)站實現(xiàn)更難
響應式設計出的稿子,當然還需要響應式的實現(xiàn)。響應式的基礎就是HTML5, CSS3。一般的建站公司,一般是沒有錢去聘用精通HTML5和CSS3技術的高手的。*多是讓程序員在寫代碼之前看2天書,然后就趕鴨子上架。這就導致了即使設計師設計出了很棒的模板,但是在實現(xiàn)了之后,怎么看怎么不舒服。
3、屏幕尺寸多,很難做到一次編碼,到處運行
目前,主流的大家用來訪問網(wǎng)頁的設備有:計算機(廢話),iPad,Android Pad(例如小米的),智能手機。那么做一個網(wǎng)站,必須到這些設備上去測試和運行。普通的網(wǎng)站作坊很少有人會愿意花這么多的精力去測試一個網(wǎng)站。
4、響應式網(wǎng)站成本大
因為響應式設計需要對多個界面兼容、功能調(diào)試,導致整個制作過程需要UI設計師和前端工程師要不斷磨合制作。
總之,響應式網(wǎng)站設計,為計算機、手機、平板電腦等不同設備的訪問用戶了提供更加舒適的界面和更好的用戶體驗(和速度),而且隨著目前移動設備的增長,已成為大勢所趨。
四、響應式網(wǎng)站的缺點有哪些?
1:對 IE 老板兼容性不友好
對于老版本 IE(IE6、IE7、IE8)支持不好,這是一個致命的問題,如果你的網(wǎng)站用戶大多還采用老版本 IE 的話,建議不做響應式網(wǎng)頁設計。
2:靈活性有所欠缺
基于不同終端的設備屬性不同,對產(chǎn)品用戶體驗要求就會截然不同。內(nèi)容比較多帶有功能性的網(wǎng)站不適合做響應式網(wǎng)站設計,如:電商類型網(wǎng)站,寬屏的 pc 端內(nèi)容如果全部要在手機端進行展示,勢必導致手機端的界面非常長,需要根據(jù)手機端屬性進行重新信息,框架設計,這樣對響應網(wǎng)站要求非常高,實現(xiàn)難度與成本非常高。但是大型網(wǎng)站為了提高用戶體驗,通常做法,把高分辨率寬屏網(wǎng)站*小的響應尺寸響應到 1024px,不再適配手機端,手機端重新設計開發(fā)一套手機網(wǎng)站,簡單理解為 2.5 響應,如:電商網(wǎng)站亞馬遜、Calvin Klein、Nike、視頻網(wǎng)站 Youtube,等。
3:速度可能會變慢
由于響應式頁面是同時下載多套 CSS 樣式代碼,可能在手機上就下載 PC、Pad 的冗余代碼,導致文件變大,影響加載速度。不過 CSS 樣式的代碼占用內(nèi)存相對圖片來說不算大,所以如果前端編程處理得好前提之下,這就不會影響網(wǎng)站加載速度。根據(jù)響應式網(wǎng)站的優(yōu)缺點,我們不難看出:企業(yè)官網(wǎng)、單頁宣傳網(wǎng)站非常適合做響應式網(wǎng)站設計,由于它們的界面內(nèi)容比較少,結構比較簡單,所以在不同終端、不同尺寸設備上進行網(wǎng)站信息框架調(diào)整、內(nèi)容加減、圖片、文字、柵格響應比較容易。內(nèi)容比較多帶有功能性的網(wǎng)站不適合做響應式網(wǎng)站設計,如:電商類型網(wǎng)站。但是隨著科技不斷發(fā)展,響應技術逐漸完善,給響應式設計提供強有力的技術支持;響應式設計可以在不同終端提
供完美展示效果與友好的用戶體驗,吻合用戶體驗至上的趨勢。所以說,響應式設計必定是未來發(fā)展趨勢。
五、讓你的網(wǎng)站變成響應式的3個簡單步驟
1 – 響應式網(wǎng)站的布局
當創(chuàng)建一個響應式網(wǎng)站,或讓現(xiàn)有的網(wǎng)站變成響應式的,*先要關注的元素的布局。我在建立響應式的網(wǎng)站,總是先創(chuàng)建一個非響應的布局,頁面寬度固定大小。如果非響應版本完成得非常不錯,我再添加媒體查詢(Media Queries)和響應式代碼。這種操作方式更容易實現(xiàn)響應式特性,在同一時間專注于一個任務。
當你已經(jīng)完成了無響應的網(wǎng)站,做的*件事是在你的 HTML 頁面,粘貼下面的代碼到和標簽之間。這將設置屏幕按1:1的尺寸顯示,在 iPhone 和其他智能手機的瀏覽器提供網(wǎng)站全視圖瀏覽,并禁止用戶縮放頁面。
現(xiàn)在是時候添加一些媒體查詢了。根據(jù) W3C 網(wǎng)站,媒體查詢由媒體類型和零個或多個媒體查詢的條件表達式組成。通過使用媒體查詢,外觀呈現(xiàn)可以針對特定范圍內(nèi)的輸出設備,而不需要改變內(nèi)容本身。換句話說,媒體查詢讓您的網(wǎng)站在各種各種顯示器上看起來都很好,從小的智能手機到大的電腦屏幕等等。
媒體查詢?nèi)Q于你的網(wǎng)站布局,所以對我來說為您提供一個現(xiàn)成可以使用的代碼片段有點困難。但是,下面的代碼對于大多數(shù)網(wǎng)站都是一個很好的起點。在這個例子中,#primary 是主要內(nèi)容區(qū)域,#secondary 是側欄。
從代碼中你可以看到,我定義了兩種規(guī)格:*先有一個*大寬度為1060px,為平板電腦優(yōu)化的橫向顯示。#primary 占在其父容器寬度的67%,#senondary 占30%,再加上3%的左外邊距。 第二個規(guī)格是用于平板電腦和更小的屏幕尺寸。
由于智能手機的屏幕尺寸小,我決定給 #primary 設置100%的寬度,#secondary 也設置100%的寬度,他將在 #primary 下面。 正如我已經(jīng)說過的,你可能必須要對這段代碼位進行修改才能適應您的網(wǎng)站的具體需求。
/* Tablet Landscape */
@media screen and (max-width: 1060px) {
#primary { width:67%; }
#secondary { width:30%; margin-left:3%;}
}
/* Tabled Portrait */
@media screen and (max-width: 768px) {
#primary { width:100%; }
#secondary { width:100%; margin:0; border:none; }
}
完成以后,讓我們看看你的布局是如何響應的。要做到這一點,我用這 Matt Kersley 創(chuàng)建的一款非常的響應式測試工具。
2 – 媒體
一個響應式的布局是實現(xiàn)響應網(wǎng)站的第一步,F(xiàn)在,讓我們把注意力集中在另外一個現(xiàn)代化網(wǎng)站非常重要的方面:媒體,如視頻或圖像。 下面的 CSS 代碼將確保您的圖像將永遠不會大于他們的父容器,代碼非常簡單,適用于大多數(shù)網(wǎng)站。請注意,IE6 等舊的瀏覽器不支持 max-width 指令。
img { max-width: 100%; }
雖然上述技術是有效的,有時你可能需要有更多的圖像控制權,例如根據(jù)客戶端的顯示大小,顯示不同的圖像。
這是由 Nicolas Gallagher 發(fā)明的好方法。讓我們看看 HTML:
正如你可以看到,我們使用 data-* 屬性來存儲替換圖像的 URL,F(xiàn)在,讓我們使用強大的 CSS3 來為匹配 min-device-width 條件的媒體指定替換圖像:
@media (min-device-width:600px) {
img[data-src-600px] {
content: attr(data-src-600px, url);
}
}
@media (min-device-width:800px) {
img[data-src-800px] {
content: attr(data-src-800px, url);
}
}
3 – 響應式網(wǎng)站的字體
本教程的*后一步絕對非常重要,但往往被網(wǎng)站開發(fā)人員忽視——字體。到現(xiàn)在為止,大多數(shù)開發(fā)人員(包括我自己)使用像素來定義字體的大小。雖然像素在普通網(wǎng)站使用是OK的,但是對于響應式網(wǎng)站來說應該有響應式的字體。事實上,一個響應式的字體大小應關聯(lián)它的父容器的寬度,這樣它才可以適應客戶端的屏幕。
CSS3 規(guī)范引入了一個新的單位叫 rem,和 em 類相似,但相對于 HTML 元素來說, rem 更易于使用。
rem 是相對于 HTML 元素的,不要忘了重置 HTML 的字體大。
html {
font-size
:
100%
; }
完成后,您可以定義響應式的字體大小,如下所示:
1 2 3 | @media ( min-width : 640px ) { body { font-size : 1 rem;} } @media ( min-width : 960px ) { body { font-size : 1.2 rem;} } @media ( min-width : 1100px ) { body { font-size : 1.5 rem;} } |
請注意,舊瀏覽器不支持 rem 單元,所以不要忘了實現(xiàn)一個替代。