Y_Shmily

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

VUE移动端适配

VUE移动端适配

安装:npm install postcss-pxtorem@5.1.1 --save

// 注意:6.0.0版本配置有误,暂未去了解处理;

// 解决办法:安装5.1.1版本,实测该版本能用

一、在src目录下新建 libs/rem.js 文件
放入以下代码:

复制代码
 1 (function (doc, win) {
 2   var docEl = doc.documentElement
 3   var isIOS = navigator.userAgent.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/)
 4   var dpr = isIOS ? Math.min(win.devicePixelRatio, 3) : 1
 5   dpr = window.top === window.self ? dpr : 1
 6   // 被iframe引用时,禁止缩放
 7   dpr = 1
 8   var scale = 1 / dpr
 9   var resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize'
10   docEl.dataset.dpr = dpr
11   var metaEl = doc.createElement('meta')
12   metaEl.name = 'viewport'
13   metaEl.content = 'initial-scale=' + scale + ',maximum-scale=' + scale + ', minimum-scale=' + scale
14   docEl.firstElementChild.appendChild(metaEl)
15   var recalc = function () {
16     var width = docEl.clientWidth
17     if (width / dpr > 750) {
18       width = 750 * dpr
19     }
20     // 乘以100,px : rem = 100 : 1
21     docEl.style.fontSize = 100 * (width / 750) + 'px'
22   }
23   recalc()
24   if (!doc.addEventListener) return
25   win.addEventListener(resizeEvt, recalc, false)
26 })(document, window)
复制代码

 

二、在main.js中引用

import './libs/rem.js'

 

三、修改.postcssrc.js 文件
在module.exports的plugins中加入:

复制代码
module.exports = {
    plugins: {
        "postcss-pxtorem": {
            rootValue: 100,
            propList: ["*"],
        },
    },
};
复制代码

 

完成,在项目中开发直接可以按照px单位来开发

设计图为750PX基准,打包以后的单位为100px=1rem;更方便于开发

完事以后记得重新运行哟!

posted on   Y_Shmily  阅读(917)  评论(1编辑  收藏  举报

编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示