移動端使用rem原理

qingtonghub發表於2018-12-05

這個網站www.w3cplus.com/mobile/lib-…說的其實已經很詳細了,再此基礎上做進一步的分析

以IP6為例

移動端使用rem原理

獨立畫素其實就是視窗,與裝置密度無關,裝置畫素就是物理畫素,與dpr有關,Phone6的裝置寬度和高度為375pt * 667pt,而其dpr為2,裝置畫素(物理畫素)為750pt * 1334pt。

通過引入flexible.js,會在html根目錄加上font-size和dpr

移動端使用rem原理

如果一張UI圖是750px,則1rem=75px,基準為75來計算rem

當圖中一個UI塊大小為100px * 100px,通過postcss或者px2rem轉換成rem時:

100/75 = 1.33333333rem

所以通過計算100px * 100px => 1.33333333rem * 1.33333333rem

在瀏覽器中,通過不同的dpr得到的UI塊大小其實不一樣

1、dpr=1時,font-size=37.5px 所以1.33333333rem*35.7=49.9999999px

所以在dpr=1的裝置中顯示出的UI塊的最終大小是

49.9999999px * 49.9999999px

2、同樣 dpr = 2時:1.33333333rem*75=100px

即 100px * 100px

3、同樣 dpr = 3時:1.33333333rem*112.5=150px

即 150px * 150px


相關文章