vue使用rem实现 移动端屏幕适配


Posted in Javascript onSeptember 26, 2018

要想移动端适配 并使用 rem  您需要先看这篇文章,配置好less ➡️ 在vue 中使用 less,就可以使用rem了

如果项目已经开发的差不多了,没有用到rem 又要使用rem,您用这招。

postcss-pxtorem:转换px为rem的插件

安装 postcss-pxtorem

npm install postcss-pxtorem --save

 

新建rem.js文件

const baseSize = 32
// 设置 rem 函数
function setRem () {
 // 当前页面宽度相对于 750 宽的缩放比例,可根据自己需要修改。
 const scale = document.documentElement.clientWidth / 750
 // 设置页面根节点字体大小
 document.documentElement.style.fontSize = (baseSize * Math.min(scale, 2)) + 'px'
}
// 初始化
setRem()
// 改变窗口大小时重新设置 rem
window.onresize = function () {
 setRem()
}

并引用进main.js文件内

import './rem'

 修改.postcssrc.js 文件

在.postcssrc.js文件内的 plugins 添加以下配置,配后就可以在开发中直接使用 px 单位开发了

"postcss-pxtorem": {
  "rootValue": 32,
  "propList": ["*"]
 }

helloworld.vue

<template>
 <div class="hello">
 test
 </div>
</template>

<script>
 export default {
 name: 'HelloWorld',
 data() {
  return {
  msg: 'Welcome to Your Vue.js App'
  }
 }
 }
</script>

<style scoped>
 .hello {
 text-align: center;
 font-size: 20px;
 width: 300px;
 height: 400px;
 background:red;
 }
</style>

效果

vue使用rem实现 移动端屏幕适配

补充:下面看下Vue用rem布局

使用vue.js搭建一个移动端项目,怎样做到自适应呢?当然选择rem布局是比较方便快捷的。

在使用vue-cli搭建好项目框架后,在目录结构的index.html文件中添加一段代码:

<script>
fnResize()
window.onresize = function () {
fnResize()
}
function fnResize() {
var deviceWidth = document.documentElement.clientWidth || window.innerWidth
if (deviceWidth >= 750) {
deviceWidth = 750
}
if (deviceWidth <= 320) {
deviceWidth = 320
}
document.documentElement.style.fontSize = (deviceWidth / 7.5) + 'px'
}
</script>

之后,在写css时,只要将px单位替换成rem,这里设置的比例是100px=1rem,例如,宽度为100px时,可以直接写成1rem。

总结

以上所述是小编给大家介绍的vue使用rem实现 移动端屏幕适配 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
清华大学出版的事半功倍系列 javascript全部源代码
May 04 Javascript
js时间戳格式化成日期格式的多种方法
Nov 11 Javascript
javascript 获取函数形参个数
Jul 31 Javascript
JavaScript设置body高度为浏览器高度的方法
Feb 09 Javascript
js获取iframe中的window对象的实现方法
May 20 Javascript
使用vue.js制作分页组件
Jun 27 Javascript
jQuery图片轮播(二)利用构造函数和原型创建对象以实现继承
Dec 06 Javascript
拖动时防止选中
Feb 03 Javascript
基于Node.js的WebSocket通信实现
Mar 11 Javascript
Ionic3 UI组件之autocomplete详解
Jun 08 Javascript
ES6基础之字符串和函数的拓展详解
Aug 22 Javascript
JavaScript中Object、map、weakmap的区别分析
Dec 15 Javascript
ExtJs使用自定义插件动态保存表头配置(隐藏或显示)
Sep 25 #Javascript
解决IE11 vue +webpack 项目中数据更新后页面没有刷新的问题
Sep 25 #Javascript
vue单页缓存方案分析及实现
Sep 25 #Javascript
Vue中对拿到的数据进行A-Z排序的实例
Sep 25 #Javascript
vue单页缓存存在的问题及解决方案(小结)
Sep 25 #Javascript
深入理解与使用keep-alive(配合router-view缓存整个路由页面)
Sep 25 #Javascript
使用vue2.0创建的项目的步骤方法
Sep 25 #Javascript
You might like
PHP文件读写操作之文件写入代码
2011/01/13 PHP
简单实用的PHP防注入类实例
2014/12/05 PHP
php利用cookies实现购物车的方法
2014/12/10 PHP
php操作mongoDB实例分析
2014/12/29 PHP
PHP生成器简单实例
2015/05/13 PHP
PHP实现登录验证码校验功能
2018/05/17 PHP
PHP Trait代码复用类与多继承实现方法详解
2019/06/17 PHP
JS trim去空格的最佳实践
2011/10/30 Javascript
js函数中onmousedown和onclick的区别和联系探讨
2013/05/19 Javascript
jsp js鼠标移动到指定区域显示选项卡离开时隐藏示例
2013/06/14 Javascript
jq实现酷炫的鼠标经过图片翻滚效果
2014/03/12 Javascript
js实现的点击数量加一可操作数据库
2014/05/09 Javascript
完美兼容各大浏览器的jQuery仿新浪图文淡入淡出间歇滚动特效
2014/11/12 Javascript
使用jQuery实现图片遮罩半透明坠落遮挡
2015/03/16 Javascript
点击按钮出现60秒倒计时的简单js代码(推荐)
2016/06/07 Javascript
ionic进入多级目录后隐藏底部导航栏(tabs)的完美解决方案
2016/11/23 Javascript
纯js仿淘宝京东商品放大镜功能
2017/03/02 Javascript
javacript replace 正则取字符串中的值并替换【推荐】
2018/09/13 Javascript
vuedraggable+element ui实现页面控件拖拽排序效果
2020/07/29 Javascript
小程序中canvas的drawImage方法参数使用详解
2019/07/04 Javascript
封装Vue Element的table表格组件的示例详解
2020/08/19 Javascript
解决nuxt 自定义全局方法,全局属性,全局变量的问题
2020/11/05 Javascript
[42:39]老党炸弹人试玩视频
2014/09/03 DOTA
Python中使用wxPython开发的一个简易笔记本程序实例
2015/02/08 Python
在Python中使用成员运算符的示例
2015/05/13 Python
python使用Tkinter实现在线音乐播放器
2018/01/30 Python
python批量下载网站马拉松照片的完整步骤
2018/12/05 Python
Python3.7将普通图片(png)转换为SVG图片格式(网站logo图标)动起来
2020/04/21 Python
python基于爬虫+django,打造个性化API接口
2021/01/21 Python
能否解释一下XSS cookie盗窃是什么意思
2012/06/02 面试题
党员群众路线承诺书
2014/05/20 职场文书
分公司经理任命书
2014/06/05 职场文书
大学国际贸易专业自荐信
2014/06/05 职场文书
村主任“四风”问题个人整改措施
2014/10/04 职场文书
承诺书范本
2015/01/21 职场文书
redis 查看所有的key方式
2021/05/07 Redis