rem計算推導

BFC發表於2018-10-30
rem適配佈局

1)問題:px轉rem

輸入:設計稿寬度uiWidth,設計稿uiPx,移動端螢幕mWidth

輸出:以rem為單位的mRem

預備知識:

1.rem是css3單位,其大小根據根元素上的font-size決定。

2.瀏覽器能顯示最小的font-size為12px。所以一般是螢幕寬度除以10


2)rem本質上是等比縮放,公式為:

uiWidth    mWidth
-------- = ----------
  uiPx          mRem


變形:


               mWidth * uiPx                                   10                uiPx
mRem = ------------------ * (mWidth/10) * --------- = -------------- * rem
                uiWidth                                           mWidth    uiWidth/10  


注意:

rem = mWidth/10 當做一個單位

mWidth = document.documentElement.getBoundingClientRect().width



一般uiWidth = 750;所以也可簡化為:

                uiPx
mRem = ------- * rem
                 75


3)總結: rem本質上是對螢幕的劃分,vw就是出來解決這種問題的單位,但是相容性不好。



相關文章