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 火狐(firefox)不显示本地图片问题解决
Jul 05 Javascript
JavaScript 编写匿名函数的几种方法
Feb 21 Javascript
DOM 中的事件处理介绍
Jan 18 Javascript
使用js正则控制input标签只允许输入的值
Jul 29 Javascript
js中hash和ico的关联分析
Feb 05 Javascript
JavaScript function函数种类详解
Feb 22 Javascript
JavaScript编码风格指南(中文版)
Aug 26 Javascript
AngularJS Controller作用域
Jan 09 Javascript
微信小程序自动客服功能
Nov 02 Javascript
vue使用混入定义全局变量、函数、筛选器的实例代码
Jul 29 Javascript
countUp.js实现数字动态变化效果
Oct 17 Javascript
Vue两个版本的区别和使用方法(更深层次了解)
Feb 16 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之数组(遍历顺序)  Laruence原创
2012/06/13 PHP
php自定文件保存session的方法
2014/12/10 PHP
php获取YouTube视频信息的方法
2015/02/11 PHP
php实现将上传word文件转为html的方法
2015/06/03 PHP
学习ExtJS(一) 之基础前提
2009/10/07 Javascript
js 加载并解析XML字符串的代码
2009/12/13 Javascript
锋利的jQuery 要点归纳(二) jQuery中的DOM操作(下)
2010/03/23 Javascript
js中匿名函数的N种写法
2010/09/08 Javascript
JQuery实现简单时尚快捷的气泡提示插件
2012/12/20 Javascript
使用AngularJS实现表单向导的方法
2015/06/19 Javascript
jQuery简单实现仿京东商城的左侧菜单效果代码
2015/09/09 Javascript
浅谈JavaScript中的对象及Promise对象的实现
2015/11/15 Javascript
基于jquery实现表格无刷新分页
2016/01/07 Javascript
基于百度地图实现产品销售的单位位置查看功能设计与实现
2016/10/21 Javascript
详解一个基于套接字实现长连接的express
2019/03/28 Javascript
详解Node.js异步处理的各种写法
2019/06/09 Javascript
使用vue打包进行云服务器上传的问题
2020/03/02 Javascript
[49:59]KG vs Mineski 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
用生成器来改写直接返回列表的函数方法
2017/05/25 Python
python编程实现12306的一个小爬虫实例
2017/12/27 Python
python编程使用selenium模拟登陆淘宝实例代码
2018/01/25 Python
Python可变和不可变、类的私有属性实例分析
2019/05/31 Python
关于Python Tkinter Button控件command传参问题的解决方式
2020/03/04 Python
python解压zip包中文乱码解决方法
2020/11/27 Python
利用CSS3实现进度条的两种姿势详解
2017/03/21 HTML / CSS
萌新的HTML5 入门指南
2020/11/06 HTML / CSS
MyFrenchPharma中文网:最大的法国药妆平台
2016/10/07 全球购物
联想新加坡官方网站:Lenovo Singapore
2017/10/24 全球购物
阿迪达斯香港官网:adidas香港
2019/11/09 全球购物
医药大学生求职简历的自我评价
2013/10/17 职场文书
2014光棍节单身联谊活动策划书
2014/10/10 职场文书
诚信承诺书
2015/01/19 职场文书
本溪水洞导游词
2015/02/11 职场文书
检讨书模板大全
2015/05/07 职场文书
西游记读书笔记
2015/06/25 职场文书
mysql5.7使用binlog 恢复数据的方法
2021/06/03 MySQL