zoukankan      html  css  js  c++  java
  • 手机端rem 用法

    !function(n){
        var  e=n.document,
             t=e.documentElement,
             i=720,
             d=i/100,
             o="orientationchange"in n?"orientationchange":"resize",
             a=function(){
                 var n=t.clientWidth||320;n>720&&(n=720);
                 t.style.fontSize=n/d+"px"
             };
             e.addEventListener&&(n.addEventListener(o,a,!1),e.addEventListener("DOMContentLoaded",a,!1))
    }(window);

    方法2

    window.onload = function(){
        /*720代表设计师给的设计稿的宽度,你的设计稿是多少,就写多少;100代表换算比例,这里写100是
          为了以后好算,比如,你测量的一个宽度是100px,就可以写为1rem,以及1px=0.01rem等等*/
        getRem(720,100)
    };
    window.onresize = function(){
        getRem(720,100)
    };
    function getRem(pwidth,prem){
        var html = document.getElementsByTagName("html")[0];
        var oWidth = document.body.clientWidth || document.documentElement.clientWidth;
        html.style.fontSize = oWidth/pwidth*prem + "px";
    }

    首先,先说一个常识,浏览器的默认字体高都是16px

    基本思路就是:利用rem单位,就是相对于跟(html)字体的大小,来计算相应元素的宽高
    
    一般将html的font-size设置为:20px或30px或50px或100px
    还有利用浏览器默认自己大小(16px)也就是16px*62.5%=10px,这样就是html{font-size:62.5%;},而不是html{font-size:10px;}因为浏览器(PC)最小就是12px。这样一来1rem = 10px;
    我们来简单的看一下:
    <div id="wrap"> 
         <div id="div1">我是一个div标签</div>
    </div>
    CSS设置样式
    
    #wrap{   
    font-size: 20px;
    } #div1{ font-size: 1em; 16em; height: 2em; background-color: lawngreen; }

      

  • 相关阅读:
    el-cascader回显问题
    nuxt + ueditor国际化
    nuxt + element + i18n 国际化element(我用的i18n@8.x版本)
    CDH| 组件的使用-Flume| Kafka| Oozie基于Hue的任务调度
    CDH| Hive| Hue| Sqoop| Impala等组件安装部署
    CDH| 组件的安装-HDFS的配置 | Flume| Kafka|
    Flink| 实时需要分析
    Flink| 状态一致性
    Flink| 容错机制
    Flink| 第一个窗口触发时间
  • 原文地址:https://www.cnblogs.com/wupeng88/p/9548730.html
Copyright © 2011-2022 走看看