日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Html開發(fā)之Viewport的使用

近年來隨著移動(dòng)端的快速發(fā)展,越來越多傳統(tǒng)的web應(yīng)用需要適配移動(dòng)終端,下面記錄一下如何通過viewport實(shí)現(xiàn)簡單的不同型號的手機(jī)端的適配問題。不過在此之前,介紹一下如何通過Chrome瀏覽器,調(diào)試在移動(dòng)終端上的效果。

調(diào)試工具

首先我們打開chrome谷歌瀏覽器,輸入天貓地址(實(shí)現(xiàn)了手機(jī)端適配),按F12進(jìn)入開發(fā)者模式。進(jìn)入如下的界面:

接下來點(diǎn)擊右下方圈紅的部分,可以調(diào)出另一個(gè)控制臺(tái),如下界面:

選擇某個(gè)Device-設(shè)備,點(diǎn)擊Emulate,之后重新刷新頁面即可看到效果,這里我選中iphone5,具體效果如下:

可以知道的是天貓是做了移動(dòng)端的適配的。

支持移動(dòng)端

知道了如何進(jìn)行調(diào)試之后,如何支持移動(dòng)端呢。這里主要是通過Viewport來實(shí)現(xiàn)移動(dòng)端的適配的。其實(shí)仔細(xì)觀察一些使用HTML5開發(fā)手機(jī)應(yīng)用或手機(jī)網(wǎng)頁時(shí),我們可能(有些可能不是通過viewport來實(shí)現(xiàn)適配的)會(huì)發(fā)現(xiàn)如下代碼:

 
 
  1.  

那么Viewport是什么呢?

手機(jī)瀏覽器是把頁面放在一個(gè)虛擬的窗口-viewport中的,通常情況下這個(gè)虛擬的窗口比屏幕寬,這樣就不用吧每個(gè)網(wǎng)頁擠到很小的窗口中(這樣會(huì)破壞沒有針對手機(jī)瀏覽器優(yōu)化的網(wǎng)頁的布局),此時(shí)雖然顯示不完全,但是用戶仍可以通過平移和縮放來看網(wǎng)頁的內(nèi)容。viewport就是讓網(wǎng)頁開發(fā)者通過其大小,動(dòng)態(tài)的設(shè)置其網(wǎng)頁內(nèi)容中控件元素的大小,從而使得在瀏覽器上實(shí)現(xiàn)和web網(wǎng)頁中相同的效果(比例縮小)。

當(dāng)然,更加優(yōu)秀的做法是類似天貓的做法:針對手機(jī)端重新進(jìn)行頁面設(shè)計(jì)、布局,因?yàn)槭謾C(jī)屏幕畢竟有限,按照web頁面等比縮小的方式較之最原始有改進(jìn),但是如何在小屏幕上展示最合適的內(nèi)容給用戶的設(shè)計(jì)才是最貼切的。

不過對于一些沒有太多要求的,可以簡單的通過viewport實(shí)現(xiàn)適配。

Viewport語法

width:控制viewport的大小,一般情況下指定為device-width(單位為縮放為100%的CSS像素),也可以指定一個(gè)固定的值例如600.

height:和width相應(yīng),指定高度。

initial-scal:初始縮放比例,頁面***次load的時(shí)候的縮放比例。

maximum-scale:允許用戶縮放到的***比例。

minimum-scale:允許用戶縮放到的最小比例。

user-scalable:用戶是否可以手動(dòng)縮放。

Demo

了解了Viewport接下來,我們實(shí)現(xiàn)一個(gè)小Demo,web版2048游戲的手機(jī)適配,web上的效果如下圖:

接下來的邏輯便是通過實(shí)際的設(shè)備大小,調(diào)整元素大小,核心代碼:

 
 
  1. var documentWidth = window.screen.availWidth;  
  2. var gridContainerWidth = 0.92*documentWidth;  
  3. var cellSideLength = 0.18*documentWidth;  
  4. var cellSpace = 0.04*documentWidth;  
  5. var headerWidth=window.screen.availWidth;  
  6. function prepareForMobile(){  
  7.     if(documentWidth>500){  
  8.         //web端  
  9.         gridContainerWidth =500;  
  10.         cellSpace=20;  
  11.         cellSideLength=100;  
  12.         headerWidth = 500;  
  13.     }else 
  14.     {  
  15.         //手機(jī)端額外處理頭部  
  16.         headerWidth = headerWidth*0.92;  
  17.     }  
  18.     $('#grid-container').css('width',gridContainerWidth - 2*cellSpace);  
  19.     $('#grid-container').css('height',gridContainerWidth - 2*cellSpace);  
  20.     $('#grid-container').css('padding',cellSpace);  
  21.     $('#grid-container').css('border-radius',0.02*gridContainerWidth);  
  22.     $('.grid-cell').css('width',cellSideLength);  
  23.     $('.grid-cell').css('height',cellSideLength);  
  24.     $('.grid-cell').css('border-radius',0.02*cellSideLength);  
  25.     //設(shè)置頭部  
  26.     $('.header').css('width',headerWidth);  
  27.     $('#newGame').css('width',headerWidth*0.20+'px');  
  28.     $('#topScore').css('width',headerWidth*0.40*0.90+'px');  

之后通過chrome瀏覽器即可看到在各個(gè)手機(jī)端上


網(wǎng)頁名稱:Html開發(fā)之Viewport的使用
網(wǎng)站鏈接:http://www.5511xx.com/article/coicopc.html