根据手机屏幕大小适配rem

const getFontSize = () => {
    let doc = document, win = window;
    let docEl = doc.documentElement;
    let resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize';
    let recalc = () => {
        let clientWidth = docEl.clientWidth;
        if( !clientWidth ) return;
        //如果屏幕大于750(750是根据我效果图设置的,具体数值参考效果图),就设置clientWidth=750,防止font-size会超过100px
        if( clientWidth > 750 ) {
            clientWidth = 750;
        }
        //设置根元素font-size大小
        docEl.style.fontSize = 100 * (clientWidth / 750) + 'px';
    };
    //屏幕大小改变,或者横竖屏切换时,触发函数
    win.addEventListener( resizeEvt, recalc, false );
    //文档加载完成时,触发函数
    doc.addEventListener( 'DOMContentLoaded', recalc, false );
}
//使用方式很简单,比如效果图上,有张图片。宽高都是100px;
//样式写法就是
img{
    width:1rem;
    height:1rem;
}
//这样的设置,比如在屏幕宽度大于等于750px设备上,1rem=100px;图片显示就是宽高都是100px
//比如在iphone6(屏幕宽度:375)上,375/750*100=50px;就是1rem=50px;图片显示就是宽高都是50px;

你可能感兴趣的:(根据手机屏幕大小适配rem)