rem布局

作者: icaojinyu | 来源:发表于2019-10-13 19:34 被阅读0次

单位

  • em是一个相对单位,1em等于当前元素或父元素的font-size值
  • rem是一个相对单位,1rem等于根元素的font-size值
  • vw/vh:把屏幕分为100份,1vw等于屏幕宽的1%

动态设置font-size:

  • 通过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 = clientWidth / 3.75 + 'px';
          };

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

<!DOCTYPE html>
<html lang="zh-CN">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
  <style>
    html {
      /* 100vw == 375px */
      /* ? vw = 100px */
      font-size: 26.66666667vw;
    }

    body {
      font-size: .14rem;
    }

    .box {
      width: 1rem;
      height: 1rem;
      background: red;
    }
  </style>
</head>

<body>
  <div class="box">hello world</div>
</body>

</html>

注:要给body重置一下font-size:16px

相关文章

网友评论

      本文标题:rem布局

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