meta

陌々發表於2018-11-13

什麼是Viewport?

    手機瀏覽器是把頁面放在一個虛擬的“視窗”(viewport)中,通常這個虛擬的“視窗”(viewport)比螢幕寬,這樣就不用把每個網頁擠到很小的視窗中,也不會破壞沒有針對手機瀏覽器優化的網頁的佈局,使用者可以通過平移和縮放來看網頁的不同部分。移動版的 Safari 瀏覽器最新引進了viewport 這個 meta tag,讓網頁開發者來控制 viewport 的大小和縮放,其他手機瀏覽器也基本支援。
複製程式碼

Viewport基礎

    一個常用的針對移動網頁優化過的頁面的 viewport meta 標籤大致如下:
    1、width : 控制viewport的大小,可以指定一個值,如600, 或者特殊的值,如device-width為裝置的寬度(單位是縮放為100%的CSS的畫素)

    2、height : 和width相對應,指定高度

    3、initial-scale : 初始縮放比例,頁面第一次載入時的縮放比例

    4、maximum-scale : 允許使用者縮放到的最大比例,範圍從0到10.0

    5、minimum-scale : 允許使用者縮放到的最小比例,範圍從0到10.0

    6、user-scalable : 使用者是否可以手動縮放,值可以是:①yes、 true允許使用者縮放;②no、false不允許使用者縮放
複製程式碼

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

這是一個文件相容模式的定義。

Edge 模式告訴 IE 以最高階模式渲染文件,也就是任何 IE 版本都以當前版本所支援的最高階標準模式渲染,避免版本升級造成的影響。簡單的說,就是什麼版本 IE 就用什麼版本的標準模式渲染

<meta http-equiv="X-UA-Compatible" content="IE=edge">

使用以下程式碼強制 IE 使用 Chrome Frame 渲染

<meta http-equiv="X-UA-Compatible" content="chrome=1">

提示 IE 使用者安裝 Google Frame Google 官方提供了對 Google Frame 外掛安裝情況的檢測,這裡直接呼叫方法即可,如果檢測到 IE 並未安裝 Google Frame,則彈出對話方塊提示安裝。

最佳的相容模式方案,結合考慮以上兩種:

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

<meta name="renderer" content="webkit">//預設webkit核心
<meta name="renderer" content="ie-comp">//預設IE相容模式
<meta name="renderer" content="ie-stand">//預設IE標準模式
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, minimal-ui">
<!-- uc強制豎屏 -->
<meta name="screen-orientation" content="portrait"/>
<meta name="apple-mobile-web-app-capable" content="yes">
<!--禁止把數字轉化為撥號連結-->
<meta name="format-detection" content="telephone=no">
<meta name="full-screen" content="yes">
<!-- QQ強制全屏 -->
<meta name="x5-fullscreen" content="true">
<!-- 針對手持裝置優化,主要是針對一些老的不識別viewport的瀏覽器,比如黑莓 -->
<meta name="HandheldFriendly" content="true">
<!--刪除預設的蘋果工具欄和選單欄 -->
<meta name="apple-mobile-web-app-capable" content="yes">
<!--在web app應用下狀態條(螢幕頂部條)的顏色-->
<meta name="apple-mobile-web-app-status-bar-style" content="black"/>  
<meta name="screen-orientation" content="portrait">
<meta name="x5-orientation" content="portrait">
<meta http-equiv="content-language" content="zh-CN" />    
<meta http-equiv="Pragma" Content="No-cache">
<meta http-equiv="cache-control" content="no-cache,must-revalidate"> 
<meta http-equiv="expires" content="0">
複製程式碼

相關文章