當(dāng)前位置:首頁(yè) > 嵌入式培訓(xùn) > 嵌入式學(xué)習(xí) > 講師博文 > H5移動(dòng)端頁(yè)面設(shè)計(jì)的基礎(chǔ)規(guī)范
隨著智能手機(jī)、平板電腦等移動(dòng)終端的發(fā)展和普及,普通大眾對(duì)手機(jī)網(wǎng)站的認(rèn)知度得到了明顯的提升。安卓,IOS手機(jī)系統(tǒng)的逐步發(fā)展也帶動(dòng)了手機(jī)頁(yè)面的發(fā)展,跟PC網(wǎng)頁(yè)相比,手機(jī)網(wǎng)站和普通網(wǎng)站有兩大不同點(diǎn):
本文引用地址://www.einuk.cn/emb/Column/7274.html
第一,訪問(wèn)入口不同。與傳統(tǒng)的電腦上網(wǎng)相比,手機(jī)上網(wǎng)具有便捷、隨時(shí)隨地的特點(diǎn)。
第二,瀏覽方式不同。由于電腦上的屏幕比手機(jī)大很多,普通網(wǎng)站比手機(jī)網(wǎng)站擁有更強(qiáng)的展示能力,能在一個(gè)網(wǎng)頁(yè)上占時(shí)大量的圖片、視頻、語(yǔ)音等全方位的信息,但是手機(jī)網(wǎng)站由于屏幕尺寸的限制,更多地僅僅是用文字和圖片來(lái)表現(xiàn)。
介于這兩點(diǎn)不同于普通網(wǎng)站的區(qū)別,分享一下我的一些移動(dòng)端網(wǎng)頁(yè)設(shè)計(jì)經(jīng)驗(yàn)與心得。
⒈ 分辨率
這應(yīng)該是移動(dòng)端網(wǎng)頁(yè)關(guān)心的問(wèn)題了,因?yàn)橐苿?dòng)設(shè)備五花八門,各種分辨率都有。要想在這些設(shè)備上都能有良好的瀏覽體驗(yàn),得花一番功夫。使用viewport:這已經(jīng)是移動(dòng)端網(wǎng)頁(yè)的必備了,它可以設(shè)定頁(yè)面的寬度,是否允許縮放等等。
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
一般設(shè)置width=device-width,就是設(shè)置為設(shè)備的屏幕寬度,當(dāng)然也可以是具體數(shù)值。百分比與max(min)-width使用:移動(dòng)端網(wǎng)頁(yè)不僅分辨率不一,而且隨時(shí)可以橫豎屏切換,所以百分比寬度設(shè)定非常必要,再配合max(min)-width限制大(小)寬度,能有效的適應(yīng)各種分辨率。
<link rel="stylesheet" type="text/css" href="style1.css" media="screen and (min-width: 640px)">
這里的意思就是在大于640px的屏幕寬度下,使用style1樣式,也可以寫在樣式內(nèi)部,如:
@media screen and (min-width: 640px){.d1{background:#ccc;}}
2.不使用絕對(duì)寬度
由于網(wǎng)頁(yè)會(huì)根據(jù)屏幕寬度調(diào)整布局,所以不能使用絕對(duì)寬度的布局,也不能使用具有絕對(duì)寬度的元素。這一條非常重要。 具體說(shuō),CSS代碼不能指定像素寬度: width:xxx px;
只能指定百分比寬度: width: xx%或者 width:auto。
3.相對(duì)大小的字體
字體也不能使用絕對(duì)大小(px),而只能使用相對(duì)大小(em)。
body {font: normal 100% Helvetica, Arial, sans-serif; }
上面的代碼指定,字體大小是頁(yè)面默認(rèn)大小的100%,即16像素。
h1 {font-size: 1.5em;}
然后,h1的大小是默認(rèn)大小的1.5倍,即24像素(24/16=1.5)。
small { font-size: 0.875em; }
small元素的大小是默認(rèn)大小的0.875倍,即14像素(14/16=0.875)。
4.流動(dòng)布局(fluid grid)
"流動(dòng)布局"的含義是,各個(gè)區(qū)塊的位置都是浮動(dòng)的,不是固定不變的。
.main { float: right; width: 70%; }
.leftBar { float: left; width: 25%; }
float的好處是,如果寬度太小,放不下兩個(gè)元素,后面的元素會(huì)自動(dòng)滾動(dòng)到前面元素的下方,不會(huì)在水平方向overflow(溢出),避免了水平滾動(dòng)條的出現(xiàn)。
另外,絕對(duì)定位(position: absolute)的使用,也要非常小心。
4.圖片的自適應(yīng)
除了布局和文本,"自適應(yīng)網(wǎng)頁(yè)設(shè)計(jì)"還必須實(shí)現(xiàn)圖片的自動(dòng)縮放。
這只要一行CSS代碼:
img { max-width: 100%;}
這行代碼對(duì)于大多數(shù)嵌入網(wǎng)頁(yè)的視頻也有效,所以可以寫成:
img, object { max-width: 100%;}
老版本的IE不支持max-width,所以只好寫成:
img { width: 100%; }
此外,windows平臺(tái)縮放圖片時(shí),可能出現(xiàn)圖像失真現(xiàn)象。這時(shí),可以嘗試使用IE的專有命令:
img { -ms-interpolation-mode: bicubic; }
或者,Ethan Marcotte的imgSizer.js。
addLoadEvent(function() {
var imgs = document.getElementById("content").getElementsByTagName("img");
imgSizer.collate(imgs);
});