自适应移动设备页面的设计
現在移動設備越來越多,使用手機上網的人也越來越多,移動設備也成為訪問互聯網的常見終端設置。以前我們在編寫管理系統的時候,客戶端只需要考慮PC機桌面設備,現在則必須要考慮到移動終端設備了。
移動終端設備的屏幕分辨率很多都不一樣,手機就分很多種大小的,然后還有一些平板電腦,如ipad,ipad迷你,等等,大小很難統一, 瀏覽器也各式各樣,這使得做移動設備的客戶端界面有了一定的困難,總不不能每種尺寸的都做上一遍。
于是很多電商公司做了3G版,觸摸屏版,普通版,電腦版等等。每種版本按大體的規則做了一遍。
手機的屏幕比較小,寬度通常是600像素以下。老式一些的手機用普通版,屏幕寬度300px以下,多以文字連接為主。手機帶觸摸屏的,屏幕要稍微大一些,操作界面又多以圖片觸摸為主。還有一些ipad等的屏幕就更大了,可以做更多內容的展示。
電商網站主要靠這些終端設備來完成銷售,為了讓用戶使用各種設置都有良好的體驗,促進訂購,電商公司不惜分開做多個版本。
我們做企業管理軟件的,頁面展示的信息不是那么多時,可以將所有移動設備的終端頁面做成標準的版本,就一套系統,然后根據屏幕的大小自適應,以后維護也就這一套。
自適應頁面的設計從開始就有很多需要注意的:
1. ?頁面中關乎布局的元素都不設置絕對的寬和高,都按百分比來設置。
2.? 字體也使用相對大小的字體 ?
如:
???? ?body{font: normal 100%;} 字體大小事頁面默認大小的100%,即16像素。 ???
??? ? h2 {font-size:1.5em} h2標題的文字大小事默認字體大小的1.1倍。
3.? 用div+css+浮動 來布局 ?各個盒子的位置用浮動的,不是固定不變的。???
??? 如:
???? .content{float:right;75%;} ??
??? ?.sidebar{float:left;width:20%;} ? ?
????? 用百分比 + 浮動,當屏幕太窄,放不下兩個盒子的時候,后面的元素會自動移動到前面元素的下方,不會使得頁面產生橫向的滾動條。
4.? 盡量不要使用絕對定位,即position:absolute的定位。
5.? 根據瀏覽器的版本做一些css的處理
6.? 根據屏幕的寬度加載相應的css文件 ?
??? ?如:
????? <link rel="stylesheet" type="text/css"??media="screen and (max-device-width: 400px)"??href="tinyScreen.css" /> ??????
???? ?屏幕寬度小于400像素,就加載tinyScree.css文件; ?????? ??
????? <link rel="stylesheet" type="text/css"??media="screen and (min-width: 400px) and (max-device-width: 600px)"??href="smallScreen.css" /> ????????
??? ?屏幕寬度在400像素 到 600像素之間,就加載smallScreen.css文件 ? ???
?????? @import url("tinyScreen.css") screen and (max-device-width: 400px);
????? ?在現有CSS文件中加載。
?7.? css文件中,根據分辨率設置不同的css風格 ? ??
????? @media screen and (max-device-width: 400px) {
.column { ? float: none; ? width:auto; ? }
.sidebar { ? display:none; ? } ??
????? } ?????
???? 屏幕寬度小于400像素,則column塊取消浮動(float:none)、寬度自動調節(width:auto),sidebar塊不顯示(display:none)。 ????? ?????
??? ?@media screen and(min-width:400px){
????? ?.content {width:65%;}
????? ?.sidebar{ width:30%;} ?????
????? } ?????
???? 屏幕大于400像素,content占65%,sidebar占30%。 ? ?
8.?? 圖片自動縮放,自適應大小 ?
?? ?? 如:img{max-width:100%;} ???
9.?? 設置meta標簽 ?
????? 如:<meta name="viewport" content="width=device-width, initial-scale=1.0"> ??
????? ?viewport meta標簽告訴瀏覽器視口寬度等于設備屏幕寬度,且不進行初始縮放。 ?
?
?
當然程序員理想的狀態是做成一套,但往往事與愿違,我們至少需要做成PC機桌面設備一套,手機版觸摸屏的一套,ipad3G版一套。在這三種的系統中再做一些各自小范圍的自適應。
總結
以上是生活随笔為你收集整理的自适应移动设备页面的设计的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: hdu 5617 Jam's maze(
- 下一篇: hdu 5624 KK's Recons