css3自適應布局單位vw,vh詳解


視口單位(Viewport units)

什么是視口? 

在桌面端,視口指的是在桌面端,指的是瀏覽器的可視區域;而在移動端,它涉及3個視口:Layout Viewport(布局視口),Visual Viewport(視覺視口),Ideal Viewport(理想視口)。

視口單位中的“視口”,桌面端指的是瀏覽器的可視區域;移動端指的就是Viewport中的Layout Viewport, “視區”所指為瀏覽器內部的可視區域大小,即window.innerWidth/window.innerHeight大小,不包含任務欄標題欄以及底部工具欄的瀏覽器區域大小。。

 根據CSS3規范,視口單位主要包括以下4個:

      1.vw:1vw等於視口寬度的1%。

      2.vh:1vh等於視口高度的1%。

      3.vmin:選取vw和vh中最小的那個。

      4.vmax:選取vw和vh中最大的那個。

 vh and vw:相對於視口的高度和寬度,而不是父元素的(CSS百分比是相對於包含它的最近的父元素的高度和寬度)。1vh 等於1/100的視口高度,1vw 等於1/100的視口寬度。

比如:瀏覽器高度950px,寬度為1920px, 1 vh = 950px/100 = 9.5 px,1vw = 1920px/100 =19.2 px。

vmax相對於視口的寬度或高度中較大的那個。其中最大的那個被均分為100單位的vmax。

vmin相對於視口的寬度或高度中較小的那個。其中最小的那個被均分為100單位的vmin。

 

vh/vw與%區別

 

請看下面簡單的栗子:

復制代碼
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>VW&VH</title>
</head>
<style>
    * {
        padding: 0;
        margin: 0
    }

    .left {
        float: left;
        width: 50vw;
        height: 20vh;
        background-color: blue;
        text-align: center;
        line-height: 20vh;
        font-size: 3rem
    }

    .right {
        float: right;
        width: 50vw;
        height: 20vh;
        background-color: green;
        text-align: center;
        line-height: 20vh;
        font-size: 3rem
    }
</style>

<body>
    <div class="left">left</div>
    <div class="right">right</div>
</body>

</html>
復制代碼

 

兼容性問題(在移動端 iOS 8 以上以及 Android 4.4 以上獲得支持,並且在微信 x5 內核中也得到完美的全面支持)

 

 轉載自

 https://www.cnblogs.com/luxiaoxing/p/7544375.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM