亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 網站 > WEB開發 > 正文

深入理解移動端像素知識與Viewport知識

2024-04-27 15:15:41
字體:
來源:轉載
供稿:網友
在做移動端網頁開發時,首先要搞清楚三種viewport和三種像素,只有明白了這些概念,才能更好地開發出適配不同分辨率設備的網頁。 但參閱的博客越多,對這些概念越是混亂,同樣的一個概念,在一篇博客中是這種說法,在另一篇博客中又變成了另外一種說法,越看越成了一團亂麻! 本文試著去綜合一下多篇博客中的這些概念,并嘗試去理順這些概念間的復雜關系,如有錯誤,歡迎指正!

       聲明: 本人在網上看到如下地址的這篇博客時,對其中諸多概念的講解特別欣賞,所以在此文將引用這些內容,如讀者看到未標注引用地址的引用內容,均出自于此篇文檔,在此也感謝這篇博客的作者的清晰講解,讓我受益無窮!??!        致歉:由于本人未及時記錄所有參閱過的博客,故只能將其中部分博客地址列于文章最后,對其他參閱過但未列出地址的博客及其作者表示歉意。

參考文檔:http://www.cnblogs.com/2050/p/3877280.html

一 像素知識

1.1 設備像素(device pixel)

        它是物理概念,指的是設備中使用的物理像素(Physic pixel)。這個單位用px表示,它是一個[相對絕對單位]———— 即在同樣一個設備上,每1個設備像素所代表的物理長度(如英寸)是固定不變的(即設備像素的絕對性); 但在不同的設備之間,每1個設備像素所代表的物理長度(如英寸)是可以變化的(即設備像素的相對性);

        我們所說的設備分辨率的單位就是設備像素。

        有了設備像素概念,我們就可以解釋下表中:不同英寸大小的移動設備上,分辨率卻相同的原因了————因為設備像素的相對性

手機類型 華為榮耀8 iphone6S Plus
屏幕尺寸 5.2英寸 5.5 英寸
分辨率 1920x1080 1920 x 1080
PPI 423 401

注:表格中的數據來源 華為榮耀8:http://www.vmall.com/PRoduct/938665621.html IPhone6S Plus:https://www.apple.com/cn/iphone-6s/specs/

1.1.1 設備分辨率

       設備分辨率的單位就是設備像素(px)。

       提到設備分辨率,順便引用如下地址的博客說明一下: http://www.chinaz.com/manage/2015/0902/441624.shtml

在同一個手機或電腦設備上,它的設備像素是固定的,這是廠商在出廠時就設置好了的————即一個設備的分辨率是固定不變的。

       所以可以調整電腦屏幕的分辨率(手機就沒這個功能!)?那只是你的眼睛在欺騙你,具體原因請見: http://www.chinaz.com/manage/2015/0902/441624.shtml <電腦屏幕可以調分辨率,難道是通過調整它的像素大小實現的?>一節

1.2 CSS像素(css pixel)

       設備像素和CSS像素一般使用px作為單位,并且在桌面瀏覽器的100%縮放情況下,css的1個像素往往都是對應著電腦屏幕的1個物理像素,這可能會造成我們的一個錯覺,那就是css中的像素就是設備的物理像素。        但實際情況卻并非如此,css像素只是一個抽象的單位,在不同的設備或不同的環境中,css中的1px所代表的設備物理像素的長度是不同的。        在為桌面瀏覽器設計的網頁中,我們無需對這個津津計較,但在移動設備上,必須弄明白這點。

上述論述得到如下結論:

css中的1px并不是總代表設備像素上的1px,尤其是在移動設備上。

        CSS像素是Web編程的概念,指的是CSS樣式代碼中使用的邏輯像素。它是一個[純相對單位]———— 在同樣一個設備上,每1個CSS像素所代表的物理像素是可以變化的(即CSS像素的第一方面的相對性); 在不同的設備之間,每1個CSS像素所代表的物理像素是可以變化的(即CSS像素的第二方面的相對性);

從上述定義可以看出:

CSS像素是一個相對單位,相對的是設備像素(device pixel)。 (原文地址:http://www.jianshu.com/p/af6dad66e49a)

1.2.1 縮放

        引用PPK大神的論述來說明一下縮放的原理:

Zooming as implemented in modern browsers consists of nothing more than “stretching up” pixels. That is, the width of the element is not changed from 128 to 256 pixels; instead the actual pixels are doubled in size. Formally, the element still has a width of 128 CSS pixels, even though it happens to take the space of 256 device pixels. (原文網址:http://www.quirksmode.org/mobile/viewports.html)

譯文:         現代瀏覽器中實現縮放的方式都是「拉伸」像素(即每CSS像素單位代表的長度發生變化,而像素總數字不變)。(如果將一個元素為128px的元素放大一倍, 譯者注)元素的寬度并沒有從128px變到256px,事實上只是“實際像素”變為2倍大小(即256px),而形式上這個元素的寬度還是128px,盡管它已經占據了256個設備像素的空間。

        所以,我們可以得到如下結論:

縮放會引起CSS像素的變化——即引起每1個CSS像素所代表的物理像素變化。例如,當用戶把頁面放大一倍,那么css中1px所代表的物理像素也會增加一倍;反之把頁面縮小一倍,css中1px所代表的物理像素也會減少一倍。

        所以,有上述描述,我們可以得到如下結論:

頁面縮放比例 = 物理像素/CSS像素

1.3 DPI&PPI

        引用 http://weizhifeng.net/you-should-know-about-dpi.html 中關于DPI和PPI的定義如下:

       DPI(dots per inch)為打印機每英寸可以噴的墨汁點數,用于印刷行業中度量空間點的密度        PPI(pixels per inch)為屏幕每英寸的像素數量(即在一個對角線長度為1英寸的正方形內所擁有的像素數),用于度量計算機顯示屏上像素的密度        目前PPI(主要是iOS)和DPI(比如在Android中)都會用在計算機顯示設備的參數描述中,并且二者的意思是一樣的,都是代表像屏幕素密度

屏幕像素密度,屏幕分辨率,屏幕尺寸三者的關系如下: 這里寫圖片描述 注:上圖公式中,如分辨率為1920px*1080px,則1920px就是公式里的縱向,1080px就是公式里的橫向了

1.4 DPR

       全稱設備像素比(Device Pixel Ratio)。先給出其官方定義:

在移動端瀏覽器中以及某些桌面瀏覽器中,window對象有一個devicePixelRatio屬性,它的官方的定義為:設備物理像素和設備獨立像素的比例,也就是 devicePixelRatio = 物理像素 / 獨立像素。

       由上述公式計算出ppi是為了得到密度分界,獲得默認縮放比例,即設備像素比–dpr

       安卓的設備像素比如下: 這里寫圖片描述

由上圖可知,ppi在120-160之間的手機被歸為低密度手機,160-240被歸為中密度,240-320被歸為高密度,320以上被歸為超高密度(Apple給了它一個高大上的名字——Retina) (原文地址:http://www.jianshu.com/p/af6dad66e49a)

        獲取蘋果的設備像素比比較簡單:

先規定密度分界基數為160,然后設備像素比=PPI除以密度分界基數160

1.5 DPR與PPI的關系

       綜合上述安卓和蘋果的密度分界圖,可以得到的DPR與PPI的關系如下:

DPR = PPI/160

1.6 設備像素與CSS像素之間的關系

       獲得設備像素比(dpr)后,便可得知設備像素與CSS像素之間的比例。當這個比率為1:1時,使用1個設備像素顯示1個CSS像素。當這個比率為2:1時,使用4個設備像素顯示1個CSS像素,當這個比率為3:1時,使用9(3*3)個設備像素顯示1個CSS像素。

       所以,有如下公式:

DPR = 設備像素/CSS像素

1.7 設備獨立像素(Device independent Pixel)

        也稱為邏輯像素,簡稱dip。

        根據上述設備像素與CSS像素之間的關系、及DPR的官方定義,我們可以推斷出:

CSS像素 =設備獨立像素 = 邏輯像素

        下面,還是引用 http://www.cnblogs.com/2050/p/3877280.html 文中的內容說明:

在移動端瀏覽器中以及某些桌面瀏覽器中,window對象有一個devicePixelRatio屬性,它的官方的定義為:設備物理像素和設備獨立像素的比例,也就是 devicePixelRatio = 物理像素 / 獨立像素。 CSS像素就可以看做是設備的獨立像素,所以通過devicePixelRatio,我們可以知道該設備上一個css像素代表多少個物理像素。例如,在Retina屏的iphone上,devicePixelRatio的值為2,也就是說1個css像素相當于2個物理像素。但是要注意的是,devicePixelRatio在不同的瀏覽器中還存在些許的兼容性問題,所以我們現在還并不能完全信賴這個東西,具體的情況可以看下這篇文章

二 Viewport知識

       關于viewport的知識,主要參閱了如下7篇博客: PPK大神關于Viewport的三篇研究文章: http://www.quirksmode.org/mobile/viewports2.html http://www.quirksmode.org/mobile/viewports.html http://www.quirksmode.org/mobile/metaviewport/#t10 以及上述三篇文章的譯文: http://weizhifeng.net/viewports2.html http://weizhifeng.net/viewports.html http://blog.csdn.net/aiolos1111/article/details/51919795 以及本文開頭提到的博客: http://www.cnblogs.com/2050/p/3877280.html

        首先引用PPK文章中的說明來解釋一下什么是Viewport

George Cummins explains the basic concept best here at Stack Overflow:

“ Imagine the layout viewport as being a large image which does not change size or shape. Now image you have a smaller frame through which you look at the large image. The small frame is surrounded by opaque material which obscures your view of all but a portion of the large image. The portion of the large image that you can see through the frame is the visual viewport. You can back away from the large image while holding your frame (zoom out) to see the entire image at once, or you can move closer (zoom in) to see only a portion. You can also change the orientation of the frame, but the size and shape of the large image (layout viewport) never changes. ”

See also this explanation by Chris.

The visual viewport is the part of the page that’s currently shown on-screen. The user may scroll to change the part of the page he sees, or zoom to change the size of the visual viewport. (原文地址:http://www.quirksmode.org/mobile/viewports2.html)

譯文:

George Cummins在Stack Overflow上對基本概念給出了最佳解釋: 把layout viewport想像成為一張無法改變大小或形狀的大圖。現在想像你有一個小一些的框架,你通過它來看這張大圖。這個小框架的周圍包裹著不透明材料,掩蓋了你所有的視線,你只能看到這張大圖的一部分。你通過這個框架所能看到的大圖的一部分就是visual viewport。你可以后拉(放大)框架以觀看整個圖片,或者你可以靠近一些(縮小框架)只看局部。你也可以改變框架的方向,但是大圖(layout viewport)的大小和形狀永遠不會變。

Chris給出的關于Visual viewport的解釋: visual viewport是頁面顯示在當前屏幕上的那一部分。用戶可以通過滾動來改變他所看到的頁面的部分,或者通過縮放來改變visual viewport的大小。 (原文地址:http://blog.csdn.net/aiolos1111/article/details/51956691)

       下面以我自己的理解解釋一下什么是Viewport:

       1、Viewport就是移動設備瀏覽器上(也可能是一個app中的webview)用來顯示網頁的一塊“畫布”。

       2、移動設備上的頁面是顯示在Viewport上的。

       3、移動設備的瀏覽器都有viewport元標簽,而引入viewport的目的就是用于解決PC頁面能在手機上正常顯示,不會因屏幕變小而擠壓布局導致頁面排版混亂的問題。

       4、在引入了Viewport概念并做如下規定后,就不會破壞那些沒有針對手機瀏覽器優化的PC網頁的布局,用戶可以通過平移和縮放來看網頁的其他部分。

移動設備上的layout viewport的寬永大等于可視區域(Visual viewport)的寬 (原文地址:http://www.quirksmode.org/mobile/metaviewport/#t10 )

       5、PPK大神對于移動設備上的viewport有著非常多的研究,他認為移動設備上有三個viewport:layout viewport 、 visual viewport 和 ideal viewport。

       下面我們分別講解一下這三種Viewport

2.1 layout viewport(布局視口)

       這是移動設備引入的第一個Viewport。引用一段我非常欣賞的話來說明layout viewport:

       首先,移動設備上的瀏覽器認為自己必須能讓所有的網站都正常顯示,即使是那些不是為移動設備設計的網站。但如果以瀏覽器的可視區域作為默認viewport的話,因為移動設備的屏幕都不是很寬,所以那些為桌面瀏覽器設計的網站放到移動設備上顯示時,必然會因為移動設備的viewport太窄,而擠作一團,甚至布局什么的都會亂掉。也許有人會問,現在不是有很多手機分辨率都非常大嗎,比如768x1024,或者1080x1920這樣,那這樣的手機用來顯示為桌面瀏覽器設計的網站是沒問題的吧?前面我們已經說了,css中的1px并不是代表屏幕上的1px,你分辨率越大,css中1px代表的物理像素就會越多,devicePixelRatio的值也越大,這很好理解,因為你分辨率增大了,但屏幕尺寸并沒有變大多少,必須讓css中的1px代表更多的物理像素,才能讓1px的東西在屏幕上的大小與那些低分辨率的設備差不多,不然就會因為太小而看不清。所以在1080x1920這樣的設備上,在默認情況下,也許你只要把一個div的寬度設為300多px(視devicePixelRatio的值而定),就是滿屏的寬度了。

       回到正題上來,如果把移動設備上瀏覽器的可視區域設為viewport的話,某些網站就會因為viewport太窄而顯示錯亂,所以這些瀏覽器就決定默認情況下把viewport設為一個較寬的值,比如980px,這樣的話即使是那些為桌面設計的網站也能在移動瀏覽器上正常顯示了。ppk把這個瀏覽器默認的viewport叫做 layout viewport。

下圖列出了一些設備上瀏覽器的默認layout viewport的寬度: 這里寫圖片描述 注:該圖引用自:http://www.quirksmode.org/mobile/metaviewport/#t10 圖中的數值均是合理的,沒有對錯之分,這個數值是由設備廠商自己決定的。

2.1.1 手機瀏覽器渲染網頁的過程

       在這里有必要說明一下手機瀏覽器渲染網頁的過程:

Step 1: 渲染————將整個頁面渲染在一個layout viewport中,以保證頁面排版正確。 Step 2: 縮放————將整個layout viewport縮放到visual viewport大小,以保證頁面在手機屏幕上被完整顯示出來

       也正是因為縮放,才會出現手機上font-size為40px與pc上font-size12px的同等物理大小的情況

2.1.2 獲取layout viewport的尺寸

通過document.documentElement.clientWidth和-Height可以獲取layout viewport的尺寸 兼容性:這種獲取方式在Android 和IPhone手機上完全支持。 (原文地址:http://weizhifeng.net/viewports2.html)

2.2 visual viewport(可視視口)

       同樣引用一段我非常欣賞的話來說明visual viewport:

因為瀏覽器可視區域(visual viewport)的寬度比這個layout viewport的寬度要小(見第四部分<總結>第7條),帶來的后果就是瀏覽器會出現橫向滾動條,所以我們還需要一個viewport來代表瀏覽器可視區域的大小,ppk把這個viewport叫做 visual viewport。

2.2.1 獲取visual viewport的尺寸

對于visual viewport,它是通過window.innerWidth/Height來進行度量的。很明顯當用戶縮小或者放大的時候,度量的尺寸會發生變化。 兼容性:IPhone上完全支持,在Android 2, Oprea mini 和 UC 8中無法正確獲取。 (原文地址:http://weizhifeng.net/viewports2.html)

2.3 ideal viewport(理想視口)

       再次引用一段我非常欣賞的話來說明ideal viewport:

又因為現在越來越多的網站都會為移動設備進行單獨的設計,所以必須還要有一個能完美適配移動設備的viewport。所謂的完美適配指的是,首先不需要用戶縮放和橫向滾動條就能正常的查看網站的所有內容;第二,顯示的文字的大小是合適,比如一段14px大小的文字,不會因為在一個高密度像素的屏幕里顯示得太小而無法看清,理想的情況是這段14px的文字無論是在何種密度屏幕,何種分辨率下,顯示出來的大小都是差不多的。當然,不只是文字,其他元素像圖片什么的也是這個道理。ppk把這個viewport叫做 ideal viewport,也就是第三個viewport——移動設備的理想viewport。

ideal viewport并沒有一個固定的尺寸,不同的設備擁有有不同的ideal viewport。所有的iphone的ideal viewport寬度都是320px,無論它的屏幕寬度是320還是640,也就是說,在iphone中,css中的320px就代表iphone屏幕的寬度。

但是安卓設備就比較復雜了,有320px的,有360px的,有384px的等等,關于不同的設備ideal viewport的寬度都為多少,可以到http://viewportsizes.com去查看一下,里面收集了眾多設備的理想寬度。

再總結一下:ppk把移動設備上的viewport分為layout viewport 、 visual viewport 和 ideal viewport 三類,其中的ideal viewport是最適合移動設備的viewport,ideal viewport的寬度等于移動設備的屏幕寬度(即設備邏輯像素,本文作者注),只要在css中把某一元素的寬度設為ideal viewport的寬度,那么這個元素的寬度就是設備屏幕的寬度了,也就是寬度為100%的效果。ideal viewport 的意義在于,無論在何種分辨率的屏幕下,那些針對ideal viewport 而設計的網站,不需要用戶手動縮放,也不需要出現橫向滾動條,都可以完美的呈現給用戶。

       從上述描述,我們可以得到一個結論:

       ideal viewport的寬度等于移動設備的屏幕寬度(這個理想的寬度是指以CSS像素單位計算的寬度,即屏幕的邏輯像素寬度),跟設備的物理寬度沒有關系。在css中,這個寬度就相當于100%的所代表的那個寬度。

       即有: ideal viewport的寬度 = 屏幕的邏輯像素寬度

最后,我們通過一段引用再說說ideal viewport存在的必要性:

為什么需要有理想的viewport呢?比如一個分辨率為320x480的手機理想viewport的寬度是320px,而另一個屏幕尺寸相同但分辨率為640x960的手機的理想viewport寬度也是為320px,那為什么分辨率大的這個手機的理想寬度要跟分辨率小的那個手機的理想寬度一樣呢?這是因為,只有這樣才能保證同樣的網站在不同分辨率的設備上看起來都是一樣或差不多的。實際上,現在市面上雖然有那么多不同種類不同品牌不同分辨率的手機,但它們的理想viewport寬度歸納起來無非也就 320、360、384、400等幾種,都是非常接近的,理想寬度的相近也就意味著我們針對某個設備的理想viewport而做出的網站,在其他設備上的表現也不會相差非常多甚至是表現一樣的。

三 meta標簽控制viewport

移動設備默認的viewport是layout viewport,但在進行移動設備網站的開發時,我們需要的是ideal viewport。那么怎么才能得到ideal viewport呢?這就該輪到meta標簽出場了。

       在開發移動設備的網站時,建議在head標簽中使用如下代碼:

<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">11

       那這段代碼的作用是什么呢?

允不允許用戶縮放不同的網站有不同的要求,我們不作過多說明,關鍵看一下width=device-widthinitial-scale=1.0的作用:

設置 initial-scale這條規則實際上做了如下2件事:        1、將頁面初始縮放因子設置為給定的值,計算出相對于ideal viewport的寬,得到visual viewport的寬。        2、設置layout viewport的寬等于剛剛計算出來的visual viewport的寬 (原文地址:http://www.quirksmode.org/mobile/metaviewport/#link15 譯文地址:http://blog.csdn.net/aiolos1111/article/details/51919795 )        3、設置layout viewport的寬等于ideal viewport的寬 (原文地址:http://www.quirksmode.org/mobile/metaviewport/#link5) 譯文地址:http://blog.csdn.net/aiolos1111/article/details/51919795 )

.

設置width=device-width這條規則實際上做了如下2件事:        1、將layout viewport的寬設置為設備屏幕的寬度(以CSS像素單位計算的寬度,即屏幕的邏輯像素寬度,本人注) (原文地址:http://www.quirksmode.org/mobile/metaviewport/#link2)        2、將ideal viewport的寬設置為layout viewport的寬。(原文地址:http://www.quirksmode.org/mobile/metaviewport/#link5)

       所以,綜合這2條規則,知道該標簽的作用是讓layout viewport的寬度等于設備的屏幕寬度,再等于ideal viewport的寬度,而這也是移動WEB頁面的最佳實踐原則:

視圖viewport的寬度 = 布局viewport的寬度 = 設備寬度(device-width)

3.1 兩個問題

       根據上述描述,有兩個問題需要澄清一下:

3.1.1 如果不設置meta viewport標簽

       如果不設置meta viewport標簽,那么移動設備上瀏覽器默認的layout viewport寬度值為980px,1024px等這些,總之是大于屏幕寬度的(這里的寬度所用的單位px都是指css中的px,它跟代表實際屏幕物理像素的px不是一回事)。        如果不設置meta viewport標簽,一個PC的頁面在移動設備上會進行縮放并完整顯示出來!

3.1.2 為什么要用2個相同功能的規則

       大家應該發現width=device-width和initial-scale=1.0的功能基本一樣,那為什么都要用到呢? 我們繼續引用PPK大神的話來說明: 這里寫圖片描述 這里寫圖片描述 原文地址:http://www.quirksmode.org/mobile/metaviewport/

根據上圖我們可得:        width=device-width在IPhone和IPad上存在兼容問題;        initial-scale=1.0在IE上存在兼容問題

所以,

要把layout viewport寬度設為ideal viewport的寬度,既可以設置 width=device-width,也可以設置 initial-scale=1,但這兩者各有一個小缺陷,就是iphone、ipad以及IE會橫豎屏不分,通通以豎屏的ideal viewport寬度為準。所以,最完美的寫法應該是,兩者都寫上去,這樣就 initial-scale=1 解決了 iphone、ipad的毛病,width=device-width則解決了IE的毛病。所以手機端最終版的代碼就是:

<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">11

3.2 縮放因子

       上面提到了一個概念”頁面初始縮放因子”,現在我們說明一下什么是縮放因子:

先給出PPK大神關于縮放因子的公式

zoom factor = ideal viewport width / visual viewport width (PS:visual viewport的寬度指的是瀏覽器可視區域的寬度)

從這個公式,我們可以得到一個結論:

頁面縮放是相對于ideal viewport來進行縮放的 (原文地址:http://www.quirksmode.org/mobile/metaviewport/)

四 總結

1、設備像素是設備分辨率的單位,同一個設備的設備像素大小固定不變 2、DPR = 設備像素/CSS像素 = 設備像素 / 設備獨立像素 ~= PPI/160 = 頁面縮放比例 2、visual viewport width = ideal viewport width / zoom factor(其中,同一個設備的ideal viewport的寬度固定不變,因此縮放頁面只是改變visual viewport的大?。?3、CSS像素 = 設備獨立像素 = 邏輯像素 4、同一個設備的CSS像素數字大小不變,但每CSS像素代表的長度會變,即CSS像素會伸縮 5、現代瀏覽器中實現縮放的方式都是「拉伸」像素:即每CSS像素單位代表的長度發生變化,而像素總數字不變。所以縮放會引起CSS像素的變化。 6、進行縮放時,visual viewport的尺寸會發生變化,layout viewport的尺寸保持不變 7、移動設備上的layout viewport的尺寸都大等于其瀏覽器的可視區域(visual viewport) 8、css中的1px并不是代表設備像素上的1px 9、移動設備分辨率越大,css中1px代表的物理像素就會越多,devicePixelRatio的值也越大 10、ideal viewport的寬度等于移動設備的屏幕寬度(這個理想的寬度是指以CSS像素單位計算的寬度,即屏幕的邏輯像素寬度),跟設備的物理寬度沒有關系。同一個設備的ideal viewport的寬度固定不變。 11、移動端常見的操作系統及其瀏覽器內核如下圖 這里寫圖片描述 12、移動端頁面設計尺寸原則:因為dpr一般都是1或者2,所以設計頁面時應按照設備邏輯像素的2倍大小進行設計 13、最后以三張圖結束本文 a、未設置meta viewport標簽時的移動端頁面效果 這里寫圖片描述 b、設置<meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0">后的移動端頁面效果 這里寫圖片描述 c、設置<meta name="viewport" content="width=device-width,initial-scale=1.0">后的移動端頁面效果 這里寫圖片描述

五 參考文檔

http://weizhifeng.net/you-should-know-about-dpi.html http://www.chinaz.com/manage/2015/0902/441624.shtml http://www.cnblogs.com/2050/p/3877280.html http://www.uisdc.com/mobile-ui-measurement-guideline http://www.25xt.com/appdesign/8336.html http://www.zhangxinxu.com/Wordpress/2012/08/window-devicepixelratio/ http://www.quirksmode.org/mobile/viewports.html http://weizhifeng.net/viewports.html http://www.jianshu.com/p/af6dad66e49a http://ued.ctrip.com/blog/?p=3715?tn=gongxinjun.com


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久热精品视频在线观看一区| 国产成人av在线| 奇门遁甲1982国语版免费观看高清| 亚洲第一福利在线观看| 精品在线欧美视频| 亚洲精品99久久久久| 欧美精品电影免费在线观看| 国产精品96久久久久久又黄又硬| 黑人巨大精品欧美一区二区| 亚洲另类激情图| 欧美成人一区二区三区电影| 中文字幕欧美日韩va免费视频| 97在线视频免费看| 国产精品偷伦一区二区| 日韩精品免费电影| 黑丝美女久久久| 亚洲激情在线观看视频免费| 亚洲美女又黄又爽在线观看| 欧美激情在线视频二区| 疯狂欧美牲乱大交777| 亚洲高清久久久久久| 欧美精品xxx| 精品久久久久久久久国产字幕| 亚洲福利视频二区| 久热爱精品视频线路一| 亚洲人成在线观看网站高清| 日本一区二区在线免费播放| 午夜精品美女自拍福到在线| 欧美视频在线观看免费| 欧美在线视频导航| 欧美网站在线观看| 日韩在线视频二区| 日韩欧美福利视频| 国产日韩欧美在线视频观看| 日韩av不卡在线| 欧美肥老太性生活视频| 91大神在线播放精品| 97精品一区二区视频在线观看| 国产精品老女人精品视频| 日韩成人激情影院| 亚洲天堂第一页| 中文字幕亚洲综合久久筱田步美| 欧美华人在线视频| 色七七影院综合| 91在线观看免费网站| 久久久久久久91| 亚洲精品99999| 精品国产一区二区三区久久| 欧美xxxx14xxxxx性爽| 欧美一级bbbbb性bbbb喷潮片| 国产视频精品在线| 97免费视频在线播放| 色播久久人人爽人人爽人人片视av| 亚洲性av网站| 久久影视免费观看| 国产精品高潮视频| 久久99久国产精品黄毛片入口| 亚洲国产精品字幕| 久久伊人91精品综合网站| 久久在线免费观看视频| 永久免费看mv网站入口亚洲| 欧美色道久久88综合亚洲精品| 国产91九色视频| 久久久久久久爱| 成人h视频在线观看播放| 国产亚洲精品一区二区| 久久久久久久色| 韩日精品中文字幕| 狠狠久久五月精品中文字幕| 中文字幕亚洲一区在线观看| 色婷婷综合久久久久中文字幕1| 国产精品人成电影在线观看| 亚洲欧美日韩一区二区在线| 亚洲欧美日韩国产精品| 久久伊人精品视频| 国产成人精品久久亚洲高清不卡| 性欧美长视频免费观看不卡| 欧美黑人又粗大| 色午夜这里只有精品| 日韩精品极品视频免费观看| 欧美日韩免费一区| 亚洲人午夜精品| 91天堂在线观看| 亚洲色图av在线| 国产精品99免视看9| 亚洲欧美另类中文字幕| 亚洲人a成www在线影院| 欧美精品一区二区三区国产精品| 亚洲精品日产aⅴ| 欧美精品久久久久a| 国产美女精彩久久| 亚洲国产成人久久综合| 欧美性高潮床叫视频| 国产精品爽黄69天堂a| 久久成人精品视频| 亚洲一区中文字幕在线观看| 亚洲精品自拍偷拍| 亚洲tv在线观看| 欧美性在线观看| 精品久久久久久久大神国产| 欧美激情精品久久久久久久变态| 欧美精品videosex牲欧美| 日韩精品中文字幕久久臀| 九九精品在线播放| 不卡在线观看电视剧完整版| 日韩精品欧美激情| 欧美激情免费观看| 国产做受高潮69| 欧美精品福利视频| 欧美精品videos| 亚洲影院色无极综合| 亚洲国产精品一区二区三区| 亚洲аv电影天堂网| 一本一本久久a久久精品牛牛影视| 国产精品久久一区主播| 亚洲成人精品视频在线观看| 欧美整片在线观看| 亚洲精品美女久久久| 亚洲级视频在线观看免费1级| 国产亚洲欧美一区| 亚洲国产精品成人精品| 亚洲国产成人精品一区二区| 亚洲精品视频在线观看视频| 久久成人精品一区二区三区| 欧美日韩国产黄| 久久全球大尺度高清视频| 亚洲精品久久7777777| 久久成人av网站| 亚洲在线观看视频网站| 欧美丰满少妇xxxxx做受| 26uuu另类亚洲欧美日本老年| 色噜噜亚洲精品中文字幕| www亚洲欧美| 亚洲自拍偷拍第一页| 国产99久久精品一区二区 夜夜躁日日躁| 国产欧美 在线欧美| 欧美高清在线视频观看不卡| 亚洲天堂av女优| 色爱精品视频一区| 亚洲乱码国产乱码精品精| 欧美激情视频一区| 色中色综合影院手机版在线观看| 国产精品高潮呻吟久久av无限| 中文国产成人精品久久一| 精品福利一区二区| 欧美国产高跟鞋裸体秀xxxhd| 一区二区三区视频免费在线观看| 亚洲伊人成综合成人网| 日韩欧美亚洲综合| 精品成人国产在线观看男人呻吟| 97香蕉久久夜色精品国产| 欧美亚洲在线视频| 麻豆精品精华液| 亚洲国产一区二区三区四区| 日韩国产欧美精品一区二区三区| 欧美日韩亚洲高清| 亚洲国产99精品国自产| 国产精品18久久久久久麻辣| 欧美日韩第一页| 奇米影视亚洲狠狠色| 亚洲天堂av网| 久久久www成人免费精品| 日韩资源在线观看| 国模精品视频一区二区|