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 相关文章推荐
使用UglifyJS合并/压缩JavaScript的方法
Mar 07 Javascript
JavaScript 垃圾回收机制分析
Oct 10 Javascript
JavaScript的原型继承详解
Feb 15 Javascript
JSON格式的时间/Date(2367828670431)/格式转为正常的年-月-日 格式的代码
Jul 27 Javascript
浅谈JavaScript 中有关时间对象的方法
Aug 15 Javascript
JS 根据子网掩码,网关计算出所有IP地址范围示例
Apr 23 Javascript
BootStrap入门教程(一)之可视化布局
Sep 19 Javascript
js 递归和定时器的实例解析
Feb 03 Javascript
微信网页授权并获取用户信息的方法
Jul 30 Javascript
微信小程序swiper使用网络图片不显示问题解决
Dec 13 Javascript
vue点击按钮动态创建与删除组件功能
Dec 29 Javascript
JS删除数组指定值常用方法详解
Jun 04 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预定义常量
2006/12/25 PHP
最令PHP初学者们头痛的十四个问题
2007/01/15 PHP
yii通过小物件生成view的方法
2016/10/08 PHP
yii2.0整合阿里云oss的示例代码
2017/09/19 PHP
PHP实现生成模糊图片的方法示例
2017/12/21 PHP
JSON格式化输出
2014/11/10 Javascript
轻松掌握JavaScript中介者模式
2016/08/26 Javascript
通过jsonp获取json数据实现AJAX跨域请求
2017/01/22 Javascript
详解Vue监听数据变化原理
2017/03/08 Javascript
基于vue2的table分页组件实现方法
2017/03/20 Javascript
vue-router命名路由和编程式路由传参讲解
2019/01/19 Javascript
详解JavaScript 浮点数运算的精度问题
2019/07/23 Javascript
vue+vant-UI框架实现购物车的复选框全选和反选功能
2019/11/05 Javascript
Vue中常用rules校验规则(实例代码)
2019/11/14 Javascript
基于ts的动态接口数据配置的详解
2019/12/18 Javascript
在vue中created、mounted等方法使用小结
2020/07/21 Javascript
python中的编码知识整理汇总
2016/01/26 Python
小米5s微信跳一跳小程序python源码
2018/01/08 Python
python时间日期函数与利用pandas进行时间序列处理详解
2018/03/13 Python
用python统计代码行的示例(包括空行和注释)
2018/07/24 Python
Django中日期处理注意事项与自定义时间格式转换详解
2018/08/06 Python
Flask教程之重定向与错误处理实例分析
2019/08/01 Python
用Python调用win命令行提高工作效率的实例
2019/08/14 Python
python并发编程多进程之守护进程原理解析
2019/08/20 Python
python 经典数字滤波实例
2019/12/16 Python
基于python使用tibco ems代码实例
2019/12/20 Python
Python打印特殊符号及对应编码解析
2020/05/07 Python
iPhoneX安全区域(Safe Area)底部小黑条在微信小程序和H5的屏幕适配
2020/04/08 HTML / CSS
Merchant 1948澳大利亚:新西兰领先的鞋类和靴子供应商
2018/03/24 全球购物
美国专业汽车音响和移动电子产品零售商:Car Toys
2019/05/13 全球购物
2014年端午节活动方案
2014/03/11 职场文书
信电学院毕业生自荐书
2014/05/24 职场文书
学习教师敬业奉献模范事迹材料思想汇报
2014/09/19 职场文书
2014年个人工作总结模板
2014/12/15 职场文书
CSS3中Animation实现简单的手指点击动画的示例
2021/07/15 HTML / CSS
MySQL如何修改字段类型和字段长度
2022/06/10 MySQL