明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

html5 viewport總結(jié)講述

[摘要]本篇文章是關(guān)于HTML5中的viewport的一個(gè)講述,對(duì)于HTML5中viewport不太熟悉的同學(xué),我們可以一起看看本篇文章!來詳細(xì)的了解一下html5中的viewport總結(jié)下來無非圍繞三個(gè)問題: 1、為什么要設(shè)置虛擬窗口 起初是為了使得虛擬窗口的分辨率和pc端接近,這樣虛擬窗口依然能夠完整...

本篇文章是關(guān)于HTML5中的viewport的一個(gè)講述,對(duì)于HTML5中viewport不太熟悉的同學(xué),我們可以一起看看本篇文章!來詳細(xì)的了解一下html5中的viewport

總結(jié)下來無非圍繞三個(gè)問題:
1、為什么要設(shè)置虛擬窗口
起初是為了使得虛擬窗口的分辨率和pc端接近,這樣虛擬窗口依然能夠完整顯示 頁面內(nèi)容,只是頁面內(nèi)容比較小,需要通過手動(dòng)縮放的方式來看清楚頁面。
2、添加viewport有什么用
添加viewport是為了方便移動(dòng)端的優(yōu)化。設(shè)置虛擬窗口寬度為device-width,與設(shè)備的物理像素相同,這樣我們就可以通過media來控制頁面移動(dòng)界面的顯示方式。
3、設(shè)備屏幕寬度(即設(shè)備的物理像素)與分辨率的關(guān)系
以iphone6為例,其屏幕實(shí)際大小為375*667,然而其分辨率達(dá)到750*1334,這兩者是不同的概念。
物理尺寸是指屏幕的實(shí)際大小。大的屏幕同時(shí)必須要配備高分辨率,也就是在這個(gè)尺寸下可以顯示多少個(gè)像素,顯示的像素越多,可以表現(xiàn)的余地自然越大。兩臺(tái)手機(jī)的屏幕大小差不多大,卻一個(gè)只能顯示兩行漢字,另一個(gè)則可以顯示五行漢字,拋開字體大小差別,關(guān)鍵就是屏幕的分辨率,后者分辨率大一些,自然在同樣字體大小下可以顯示更多行的漢字。彩屏手機(jī)的確好,沒有足夠大分辨率的屏幕表現(xiàn),再高的顏色質(zhì)量又有何用。


下面我們來解釋一下viewport的作用和它怎樣與media結(jié)合。
一個(gè)50像素寬的p在pc瀏覽器顯示可能剛好,但是如果在手機(jī)瀏覽器顯示就會(huì)顯得過大。怎么解決這個(gè)問題呢?Apple找到了一個(gè)辦法:在移動(dòng)版(iOS)的Safari中定義了viewport meta標(biāo)簽,它的作用就是創(chuàng)建一個(gè)虛擬的窗口(viewport),而且這個(gè)虛擬窗口的分辨率接近于桌面顯示器,Apple將其定位為980px。也就是當(dāng)我用瀏覽器中打開任意的一個(gè)頁面,這個(gè)頁面的寬度為980px,而不是屏幕的物理寬度。
以一代iphone6下的Safari來說就是:
在iphone6的375px物理屏幕上——視覺窗口(visual viewport),創(chuàng)建出了一個(gè)980px的虛擬窗口——布局窗口(layout viewport),在視覺窗口(visual viewport)中我們可以拖動(dòng)橫向豎向滑動(dòng)條或者放大縮小網(wǎng)頁,來達(dá)到最佳的瀏覽效果(類似桌面瀏覽器);而布局窗口(layout viewport)用來配合CSS渲染布局,例如當(dāng)我們?cè)O(shè)置一個(gè)容器的寬度為100%時(shí),這個(gè)容器的實(shí)際值為980px而不是375px。如此一來大部分 網(wǎng)頁就能以縮放的形式正常的顯示在手機(jī)屏幕上了。

虛擬窗口980px在屏幕上的實(shí)際尺寸是多大?
iphone6屏幕的物理像素是375px,虛擬窗口的寬度是980px,這兩者的1px大小是不想等,說得更簡(jiǎn)單一點(diǎn)就是此px非彼px,一個(gè)是用來形容實(shí)際窗口即視覺窗口的大小,一個(gè)是用來形容虛擬窗口的大小,沒什么相關(guān)的。(可以通過chromn來檢查頁面在pc瀏覽器和手機(jī)瀏覽器的寬度。)

  • safari瀏覽器、opera瀏覽器、chromn瀏覽器 虛擬窗口大小默認(rèn)都是980px,火狐瀏覽器默認(rèn)開啟手機(jī)模式,其虛擬窗口寬度就是設(shè)備寬度。

    智能手機(jī)創(chuàng)建出虛擬窗口后,又出現(xiàn)一個(gè)問題,pc端網(wǎng)頁在手機(jī)瀏覽器打開后無論是字體還是其它元素都顯得比較小,看起來比較吃力,動(dòng)手縮放又顯得比較麻煩。apple又弄出個(gè)viewport用來調(diào)整虛擬窗口的大小,一般我們會(huì)這樣寫

<meta name="viewport" content="width =device-width,initial-scale=1,user-scalable=1">

device-width表示設(shè)置虛擬窗口的大小同設(shè)備的物理像素寬度相等。這樣方便我們使用media寫一個(gè)專門適配移動(dòng)端的頁面,這樣我們就可以在移動(dòng)端看到合適大小的頁面。

以上就是html5 viewport總結(jié)講述的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!


網(wǎng)站建設(shè)是一個(gè)廣義的術(shù)語,涵蓋了許多不同的技能和學(xué)科中所使用的生產(chǎn)和維護(hù)的網(wǎng)站。