目前的幾種布局
隨著移動互聯(lián)網(wǎng)的發(fā)展和微信的突起,移動端的響應(yīng)式布局越來越重要了。
目前網(wǎng)站布局有以下幾種:
1.定寬度布局
很多pc的網(wǎng)站都是定寬度布局的,也就是設(shè)置了min-width,
這樣一來,如果小于這個寬度就會出現(xiàn)滾動條,
如果大于這個寬度則內(nèi)容居中外加背景,
這種設(shè)計常見與pc端。
2.響應(yīng)式布局
所謂響應(yīng)式布局就是流式布局+媒體查詢,
流式布局用來解決不同寬度的布局問題,
外加媒體查詢,可以調(diào)整布局,例如大屏幕是布局1,小屏幕是布局2,
這種布局通吃pc和移動端,做到精細(xì)處,兩者的效果都很好,
缺點(diǎn)是媒體查詢是有限的,也就是可以枚舉出來的,
只能適應(yīng)主流的寬高。
3.rem布局
近期出現(xiàn)rem布局,參考:http://isux.tencent.com/web-app-rem.html
原理是,先按定高寬設(shè)計出來頁面,然后轉(zhuǎn)換為rem單位,
配合js查詢屏幕大小來改變html的font-size,
最終做出所謂的完美自適應(yīng)。
rem的缺點(diǎn)
rem一出好像所有移動端自適應(yīng)不采用rem都很low一樣,
來分析分析,
假設(shè)以100x100做出網(wǎng)頁,
那么采用rem+js完全可以自適應(yīng)所有200x200,300x300,450x450等等高寬,
問題來了,
如果用100x100設(shè)計好后,
來了100x200,100x300,100x400的手機(jī),
那么效果無非兩種:
1.網(wǎng)頁內(nèi)容只局限與網(wǎng)頁頂部,例如100x400的手機(jī),網(wǎng)頁內(nèi)容只占用的100x100的部分,
2.有人說可以高度也js+rem,那么效果無非是拉伸或者縮放
不要抬杠
有人會說了,現(xiàn)實中不會有100x400的手機(jī),
我想說的是這種rem+js只不過是寬度自適應(yīng),
高度沒有做到自適應(yīng),一些對高度,或者元素見間距要求比較高的設(shè)計,
那這種布局沒有太大的意義。
如果只是寬度自適應(yīng),那我更推薦的是響應(yīng)式設(shè)計。
響應(yīng)式 VS rem
1.響應(yīng)式
隨便找一個響應(yīng)式的網(wǎng)站
改變?yōu)g覽器寬度,你會發(fā)現(xiàn)“布局”會隨之變化,不是一成不變的,
例如導(dǎo)航欄在大屏幕下是橫排,在小屏幕下是豎排,在超小屏幕下隱藏為菜單,
也就是說如果有足夠的耐心,在每一種屏幕下都應(yīng)該有合理的布局,完美的效果。
優(yōu)點(diǎn):適應(yīng)pc和移動端,如果足夠耐心,效果完美
缺點(diǎn):要匹配足夠多的屏幕大小,工作量不小,設(shè)計也需要多個版本
3.rem+js
改變?yōu)g覽器寬度,你會發(fā)現(xiàn),頁面所有元素的高寬都等比例縮放,
也就是大屏幕下導(dǎo)航是橫的,小屏幕下還是橫的只不過變小了。。
優(yōu)點(diǎn):理想狀態(tài)是所有屏幕的高寬比和最初的設(shè)計高寬比一樣,或者相差不多,完美適應(yīng)。
缺點(diǎn):碰到重視高度的設(shè)計,或者重視元素間間距的設(shè)計,那就玩不開了。
總結(jié)
1.如果只做pc端
那么定寬度是最好的選擇
2.如果做移動端,且設(shè)計對高度要求不高
那么rem+js是最好的選擇,一份css+一份js調(diào)節(jié)font-size搞定
3.如果pc,移動要兼容,而且要求很高
那么響應(yīng)式布局還是最好的選擇,前提是設(shè)計根據(jù)不同的高寬做不同的設(shè)計,
響應(yīng)式根據(jù)媒體查詢做不同的布局。
【ps】
還有一種rem+媒體查詢,和rem+js一對比感覺有點(diǎn)雞肋就沒有提及。
最完美的是
隨著移動端的風(fēng)行,最完美的是:
響應(yīng)式布局+多版本設(shè)計+足夠的耐心
廈門網(wǎng)站建設(shè),網(wǎng)站優(yōu)化,福建谷歌推廣,小程序開發(fā),企業(yè)郵箱,微信推廣