zoukankan      html  css  js  c++  java
  • 手机端rem适配模板,js动态修改根节点字体大小

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta charset="UTF-8">
        <meta name="viewport"
              content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title>手机端rem适配模板</title>
        <script>
            (function (doc, win) {
                setRem();
                var resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize',
                    recalc = function () {
                        setRem();
                    };
                if (!doc.addEventListener)
                    return;
                win.addEventListener(resizeEvt, recalc, false);
                // doc.addEventListener('DOMContentLoaded', recalc, false);
            })(document, window);
    
            function setRem() {
                var docEl = document.documentElement;
                var clientWidth = docEl.clientWidth;
                if (!clientWidth) {
                    return;
                }
                docEl.style.fontSize = 100 * (clientWidth / 1080) + 'px';
            }
        </script>
        <style>
            html {
                font-size: 20px;
                max- 640px;
                min- 375px;
            }
    
            body {
                padding: 0;
                margin: 0;
            }
    
            ul, li, ol, input {
                box-sizing: border-box;
            }
    
            input {
                outline: none;
            }
    
            li {
                list-style: none;
            }
    
            a {
                text-decoration: none;
                color: black;
            }
    
            .container {
                min-height: 100vh;
                 100%;
                display: flex;
                flex-direction: column;
                justify-content: space-between;
                align-items: center;
                text-align: center;
            }
    
            header {
                 100%;
            }
    
            .content {
                flex: 1;
                 100%;
            }
    
            footer {
                 100%;
            }
        </style>
    </head>
    <body>
    <div class="container">
        <header>header</header>
        <div class="content">1</div>
        <footer>footer</footer>
    </div>
    <script type="text/javascript">//JS监听浏览器文字大小代码
    (function (doc, win) {
        var docEl = doc.documentElement,
            resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize',
            recalc = function () {
                var clientWidth = docEl.clientWidth;
                if (!clientWidth) return;
                docEl.style.fontSize = 20 * (clientWidth / 320) + 'px';
            };
    
    
        if (!doc.addEventListener) return;
        win.addEventListener(resizeEvt, recalc, false);
        doc.addEventListener('DOMContentLoaded', recalc, false);
    
    })(document, window);
    </script>
    </body>
    </html>
    
    
    有什么不同见解可以在评论区共同讨论
  • 相关阅读:
    分不清npm cnpm npx nvm ?
    gulp 中对于css文件的压缩合并出现的unable to minify JavaScript问题
    JS实现选项卡和JQ实现选项卡
    前端性能的优化
    JS中事件绑定的方式以及事件监听和事件的委托
    简易轮播图和无缝轮播图的实现
    ES6中对象的扩展以及新增方法
    javascript的基本介绍和发展
    this浅谈
    浅谈DOM的概念和作用
  • 原文地址:https://www.cnblogs.com/lambertlt/p/15006696.html
Copyright © 2011-2022 走看看