濮阳杆衣贸易有限公司

主頁 > 知識庫 > viewport 的基本原理以及詳細使用方法

viewport 的基本原理以及詳細使用方法

熱門標簽:強訊外呼系統(tǒng) 貴陽ai外呼系統(tǒng) 愛巢地圖標注 crm外呼系統(tǒng)好不好 電話機器人批發(fā) 智能電銷機器人廣告語 長春極信防封電銷卡公司 電銷外呼線路改不外呼線路 重慶人工智能電銷機器人報價

一.viewport的概要

移動端瀏覽器通常都在一個比屏幕更寬的虛擬窗口中渲染頁面,這個虛擬窗口就是viewport,目的是正常展示沒有做移動端適配的網(wǎng)頁,可以讓他們完整的展現(xiàn)給用戶。我們有時用移動設(shè)備訪問桌面版網(wǎng)頁就會看到一個橫向滾動條,這里可顯示區(qū)域的寬度就是viewport的寬度。

常規(guī)使用,頁面可以縮放就用下面的代碼

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

如果不想頁面縮放就用下面的代碼

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

二.css中的像素和設(shè)備像素的區(qū)別

在桌面網(wǎng)頁開發(fā)時,css中的1px就是設(shè)備上的1px;然而css中的1px僅僅是一個抽象的值,不代表實際像素為多少;而在移動設(shè)備中,不同設(shè)備的像素密度是不一樣的,css中的1px可能并不等于真實設(shè)備的一個像素值。用戶縮放也會改變css中的1px代表多少設(shè)備像素。這個比例就是devicePixelRatio

物理像素/獨立像素 = devicePixelRatio
我們可以在瀏覽器中進行縮放,在控制臺中打印window.devicePixelRatio來查看devicePixelRatio的大小。其中的獨立像素可以理解為css中的px。

三.視口基礎(chǔ)

代碼:

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

以下為viewport的幾個屬性,這些屬性可以混合來使用,多個屬性同時使用要用逗號隔開。這里我們展開一個概念,叫做ideal viewport,指的是理想情況下的viewport,不需要用戶縮放和橫向滾動條就能正常查看網(wǎng)頁的所有內(nèi)容,并且能夠看清所有文字,無論這個文字在css中定義為多小,顯示出來時可以看清的。

屬性 描述
width 控制視口的寬度,可以指定數(shù)字;或設(shè)置device-width來指定
height 控制視口的高度,這個屬性不太重要,很少使用
initial-scale 控制頁面最初加載時的在在idealviewport下縮放等級,通常設(shè)為1,可以是小數(shù)
maximum-scale 允許用戶的最大縮放值,為一個數(shù)字,可以帶小數(shù)
minimum-scale 允許用戶的最小縮放值,為一個數(shù)字,可以帶小數(shù)
user-scalable 是否允許用戶進行縮放,值為”no”或”yes”, no 代表不允許,yes代表允許

四.viewport進階

1.width和initial-scale
當設(shè)置了width和initial-scale時,瀏覽器會自動選擇數(shù)值最大的進行適配。如設(shè)置:

<meta name="viewport" content="width=400, initial-scale=1">

瀏覽器會選擇數(shù)值大的進行適配,如果當前窗口ideal viewport寬度為300,initial-scale值為1,取得是width為400的值;如果當前窗口的ideal viewport為480,則取480。

事實上,width=device-width和initial-scale=1都代表應(yīng)用ideal viewport,但在ipad、iphone等移動設(shè)備和IE上,橫豎屏不分,默認都取豎屏的寬度,兼容性最好的寫法就是

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

2.動態(tài)改變屬性

a. document.write()

document.write('<meta name="viewport" content="width=device-width,initial-scale=1">')

b.setAttribute

var mvp = document.getElementById('testViewport');
mvp.setAttribute('content','width=480');

viewport概念

移動端瀏覽器通常都在一個比屏幕更寬的虛擬窗口中渲染頁面,這個虛擬窗口就是viewport,目的是正常展示沒有做移動端適配的網(wǎng)頁,可以讓他們完整的展現(xiàn)給用戶。我們有時用移動設(shè)備訪問桌面版網(wǎng)頁就會看到一個橫向滾動條,這里可顯示區(qū)域的寬度就是viewport的寬度。

css中的像素和設(shè)備像素的區(qū)別

在桌面網(wǎng)頁開發(fā)時,css中的1px就是設(shè)備上的1px;然而css中的1px僅僅是一個抽象的值,不代表實際像素為多少;而在移動設(shè)備中,不同設(shè)備的像素密度是不一樣的,css中的1px可能并不等于真實設(shè)備的一個像素值。用戶縮放也會改變css中的1px代表多少設(shè)備像素。這個比例就是devicePixelRatio

物理像素/獨立像素 = devicePixelRatio

我們可以在瀏覽器中進行縮放,在控制臺中打印window.devicePixelRatio來查看devicePixelRatio的大小。其中的獨立像素可以理解為css中的px。

視口基礎(chǔ)
一個典型的針對移動端優(yōu)化的站點包含類似下面的內(nèi)容:

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

以下為viewport的幾個屬性,這些屬性可以混合來使用,多個屬性同時使用要用逗號隔開。這里我們展開一個概念,叫做ideal viewport,指的是理想情況下的viewport,不需要用戶縮放和橫向滾動條就能正常查看網(wǎng)頁的所有內(nèi)容,并且能夠看清所有文字,無論這個文字在css中定義為多小,顯示出來時可以看清的。

屬性 描述
width 控制視口的寬度,可以指定數(shù)字;或設(shè)置device-width來指定
height 控制視口的高度,這個屬性不太重要,很少使用
initial-scale 控制頁面最初加載時的在在idealviewport下縮放等級,通常設(shè)為1,可以是小數(shù)
maximum-scale 允許用戶的最大縮放值,為一個數(shù)字,可以帶小數(shù)
minimum-scale 允許用戶的最小縮放值,為一個數(shù)字,可以帶小數(shù)
user-scalable 是否允許用戶進行縮放,值為”no”或”yes”, no 代表不允許,yes代表允許

viewport進階

1.width和initial-scale
當設(shè)置了width和initial-scale時,瀏覽器會自動選擇數(shù)值最大的進行適配。如設(shè)置:

<meta name="viewport" content="width=400, initial-scale=1">

瀏覽器會選擇數(shù)值大的進行適配,如果當前窗口ideal viewport寬度為300,initial-scale值為1,取得是width為400的值;如果當前窗口的ideal viewport為480,則取480。

事實上,width=device-width和initial-scale=1都代表應(yīng)用ideal viewport,但在ipad、iphone等移動設(shè)備和IE上,橫豎屏不分,默認都取豎屏的寬度,兼容性最好的寫法就是

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

2.動態(tài)改變屬性

a. document.write()

document.write('<meta name="viewport" content="width=device-width,initial-scale=1">')

b.setAttribute

var mvp = document.getElementById('testViewport');
mvp.setAttribute('content','width=480');

好了,這篇文章就介紹到這了大家可以根據(jù)自己測需要要選擇。一般來說pc與移動不帶自適應(yīng)的就可以用不支持縮放的,如果跳轉(zhuǎn)到移動端的可以縮放也沒有影響。

標簽:上海 山南 清遠 內(nèi)蒙古 陜西 吳忠 保定 廣安

巨人網(wǎng)絡(luò)通訊聲明:本文標題《viewport 的基本原理以及詳細使用方法》,本文關(guān)鍵詞  viewport,的,基本,原理,以及,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《viewport 的基本原理以及詳細使用方法》相關(guān)的同類信息!
  • 本頁收集關(guān)于viewport 的基本原理以及詳細使用方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    闸北区| 邵武市| 张家口市| 江油市| 海淀区| 临清市| 肃南| 云龙县| 达拉特旗| 武宁县| 台南市| 砚山县| 玉屏| 祁阳县| 伊吾县| 江北区| 融水| 安仁县| 西贡区| 慈溪市| 岚皋县| 搜索| 正阳县| 大名县| 馆陶县| 绥滨县| 垣曲县| 庆安县| 昭苏县| 眉山市| 乌鲁木齐县| 冀州市| 东乡| 成都市| 海淀区| 清丰县| 呼图壁县| 甘肃省| 伊吾县| 文水县| 克东县|