美文网首页前端面试题
移动端适配, 通过动态设置html的font-size结合rem

移动端适配, 通过动态设置html的font-size结合rem

作者: 辛巴达 | 来源:发表于2020-12-14 17:37 被阅读0次

    index.html中

    注意设置的 clientWidth / 375 的分母的值 375 为对照设计稿的宽度比例取值的大小

    <script>
        (function(doc, win) {
            var _root = doc.documentElement,
                resizeEvent = 'orientationchange' in window ? 'orientationchange' : 'resize',
                resizeCallback = function() {
                    var clientWidth = _root.clientWidth,
                        fontSize = 10;
                    if (!clientWidth) return;
                    if (clientWidth < 640) {
                        fontSize = 10 * (clientWidth / 375);
                    } else {
                        fontSize = 16;
                    }
                    _root.style.fontSize = fontSize + 'px';
                };
            if (!doc.addEventListener) return;
            win.addEventListener(resizeEvent, resizeCallback, false);
            doc.addEventListener('DOMContentLoaded', resizeCallback, false);
        })(document, window)
      </script>
    
    • 使用时
    // vue
    <div class="phone"></div>
    // css
    .phone {
      width: 20rem; // 20 * 10 = 200px 以宽度为 375 iphone 6 的设计稿宽度200px对比设置改值即可
    }
    

    相关文章

      网友评论

        本文标题:移动端适配, 通过动态设置html的font-size结合rem

        本文链接:https://www.haomeiwen.com/subject/lbtbgktx.html