屏幕自適應(yīng)單位rem、vw轉(zhuǎn)換(移動端適配)

1.使用rem的js代碼解決適配問題

  • 事實上 rem.js 是把屏幕等分成 10 份,每份為 1rem , 1rem 對應(yīng)的大小就是 rem基準值 ,rem.js做的就是把 rem基準值htmlfont-size ,所以如果設(shè)備的 物理像素 寬為 640px,那么 1rem=640px/10=64px , htmlfont-size為16px

  • rem.js文件內(nèi)容

/* rem.js文件內(nèi)容 */
(function () {
    var html = document.documentElement;

    function onWindowResize() {
        html.style.fontSize = html.getBoundingClientRect().width / 20 + 'px';
    }

    window.addEventListener('resize', onWindowResize);
    onWindowResize();
})();

2.只需要寫入簡單的單位轉(zhuǎn)換函數(shù)即可

事例:

  • px轉(zhuǎn)rem
// 1rem = 75px
//  iPhone 6尺寸作為設(shè)計稿基準
$base: 75;
@function px2rem($px) {
    @return ($px / $base) * 1rem;
}

.wrap {
    width: px2rem(750);
    background: #EE0A3B;
}
  • px轉(zhuǎn)vw
$vm_base: 375; 
@function px2rem($px) {
     @return ($px / 375) * 100vw;
 }

.wrap {
    width: px2rem(750);
    background: #EE0A3B;
}
···
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容