首页 > 代码库 > 移动端rem字体适配JS

移动端rem字体适配JS

// 『REM』手机屏幕适配,兼容更改过默认字体大小的安卓用户
function adapt(designWidth, rem2px) { 
//  designWidth:‘设计图宽度‘   1rem==rem2px+‘px‘                     
    var d = window.document.createElement(‘div‘);
    d.style.width = ‘1rem‘;
    d.style.display = "none";
    var head = window.document.getElementsByTagName(‘head‘)[0];
    head.appendChild(d);
    var defaultFontSize = parseFloat(window.getComputedStyle(d, null).getPropertyValue(‘width‘));
    d.remove();
    document.documentElement.style.fontSize = window.innerWidth / designWidth * rem2px / defaultFontSize * 100 + ‘%‘;
    var st = document.createElement(‘style‘);
// 适应横屏、竖屏
    var portrait = "@media screen and (min-width: " + window.innerWidth + "px) {html{font-size:" + ((window.innerWidth / (designWidth / rem2px) / defaultFontSize) * 100) + "%;}}";
    var landscape = "@media screen and (min-width: " + window.innerHeight + "px) {html{font-size:" + ((window.innerHeight / (designWidth / rem2px) / defaultFontSize) * 100) + "%;}}"
    st.innerHTML = portrait + landscape;
    head.appendChild(st);
    return defaultFontSize
};
var defaultFontSize = adapt(640, 100);

 

移动端rem字体适配JS