移动端适配方案

(function(doc, win) {
    var docEl = doc.documentElement,
        resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize',
        recalc = function() {
            var clientWidth = docEl.clientWidth;
            if(!clientWidth) return;
            if(clientWidth >= 750) {
                docEl.style.fontSize = '100px';
            } else {
                docEl.style.fontSize = 100 * (clientWidth / 750) + 'px';
            }
        };

    if(!doc.addEventListener) return;
    win.addEventListener(resizeEvt, recalc, false);
    doc.addEventListener('DOMContentLoaded', recalc, false);
})(document, window)

1rem等于根元素font-size属性大小,所以我们要根据不同尺寸的手机通过改变根元素的font-size大小来做适配的,所引入以上js,直接在css中用rem单位即可。例如:750px的设计稿上量得某区域宽度为150px,css中宽度写法为:1.5rem;,即 150/750 rem。

原文地址:https://www.cnblogs.com/fanyanzhao/p/10298623.html