rem布局教程最详细(菜菜出品,必出菜品第二季)

简介: rem布局教程最详细(菜菜出品,必出菜品第二季)

rem主要是作用于手机适配使用,创建一个rem.js文件

创建好rem.js文件,然后在需要使用的页面进行引入

//rem.js
    (function (doc, win) {
 
      var isAndroid = win.navigator.appVersion.match(/android/gi);
      var isIPhone = win.navigator.appVersion.match(/iphone/gi);
 
      var scale = 1.0;
      var ratio = 1;
      if(isIPhone) {
        if (window.devicePixelRatio == 2) {
          scale *= 0.5;
          ratio *= 2;
        }
        if (window.devicePixelRatio == 3) {
          scale *= (1/3);
          ratio *= 3;
        }
      }
      var text = '<meta name="viewport" content="initial-scale=' + scale + ', maximum-scale=' + scale + ',' + ' minimum-scale=' + scale + ', width=device-width,' + ' user-scalable=no" />';
      document.write(text);
 
      var docEl = doc.documentElement
      var resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize'
      var recalc = function () {
        var clientWidth = docEl.clientWidth
        if (!clientWidth) return
        docEl.style.fontSize = 100 * (clientWidth / 750)  + 'px'
 
        // 解决部分rem特别大的问题
        var docElFontSize = docEl.style.fontSize.replace(/px/gi, '')
        var computedFontSize = win.getComputedStyle(docEl)['font-size'].replace(/px/gi, '')
        docElFontSize != computedFontSize && (docEl.style.fontSize = docElFontSize * docElFontSize / computedFontSize + 'px')
      }
      if (!doc.addEventListener) return
      recalc()
      win.addEventListener(resizeEvt, recalc, false)
    })(document, window);
相关文章
|
6月前
|
机器人
小红书自动发布笔记,真好用!
小红书自动发布笔记,真好用!
800 0
|
缓存 API Android开发
Android 毕业设计美图与开发资讯 App - 看妹纸与论坛资讯
Android 毕业设计美图与开发资讯 App - 看妹纸与论坛资讯
|
6月前
|
前端开发 算法 JavaScript
2025年阿里招聘已放出,标题没错,就是2025年
机会总是留给有准备的人,话都懂,但真正做到,你至少领先80%的人,先说一个事,就在昨天,V哥帮公众号里的一个用户远程做了沟通,这位女生是长春某一本学校的在读大三学生,将于2025年毕业,从公众号里找到了V哥,暂且称她为小曦。
106 0
|
6月前
|
存储 运维 安全
年终总结:官网搭建知多少
官网搭建的核心工作可以分为以下5个部分,找到每一步的最佳解决方案,专属企业官网就近在眼前啦!
123 1
|
开发者
一不小心,登上支付宝开发者社区热文榜单Top3
就是这个文章顶到了社区热文榜单Top3,有点小惊喜,虽然没什么技术含量,菜的一逼,见笑了见笑了,人在家中坐,奖从天上来。
202 0
一不小心,登上支付宝开发者社区热文榜单Top3
|
API 数据库
【探花交友】通用设置总结笔记
【探花交友】通用设置总结笔记
179 0
【探花交友】通用设置总结笔记
|
移动开发
程序人生 - 祝贺登榜《移动开发领域内容榜》NO.38
程序人生 - 祝贺登榜《移动开发领域内容榜》NO.38
106 0
程序人生 - 祝贺登榜《移动开发领域内容榜》NO.38
|
编解码 移动开发 数据可视化
自研开源项目正式动工,顺便分享 10个酷炫后台模板
自研开源项目正式动工,顺便分享 10个酷炫后台模板
324 0
自研开源项目正式动工,顺便分享 10个酷炫后台模板
|
Web App开发 前端开发 JavaScript
前端周刊第十八期
前端周刊发表每周前端技术相关的大事件、文章教程、一些框架的版本更新、以及代码和工具。每周定期发表,欢迎大家关注、转载。
前端周刊第十八期
|
前端开发 数据可视化 数据管理
零起点入门系列教程⑤:用宜搭简单布局一个首页
【零起点入门系列教程】将会带给大家从业务视角出发由浅入深地学习用宜搭实现应用搭建。即便是没有任何代码基础的新手只要跟着系列课程,从0开始慢慢修炼,也能找到成功搭建应用的乐趣。今天第五讲,如何用宜搭简单布局一个首页。
3262 0
零起点入门系列教程⑤:用宜搭简单布局一个首页