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 相关文章推荐
CheckBox 如何实现全选?
Jun 23 Javascript
基于jQuery替换table中的内容并显示进度条的代码
Aug 02 Javascript
基于JQuery实现的类似购物商城的购物车
Dec 06 Javascript
AngularJS bootstrap启动详解及实例代码
Sep 14 Javascript
使用JQuery中的trim()方法去掉前后空格
Sep 16 Javascript
AngularJS压缩JS技巧分析
Nov 08 Javascript
在node中如何使用 ES6
Apr 22 Javascript
bootstrap响应式表格实例详解
May 15 Javascript
解决vue v-for 遍历循环时key值报错的问题
Sep 06 Javascript
React SSR样式及SEO的实践
Oct 22 Javascript
javascript function(函数类型)使用与注意事项小结
Jun 10 Javascript
VUEX 数据持久化,刷新后重新获取的例子
Nov 12 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格式化工具Beautify PHP小小BUG
2008/04/24 PHP
php图片上传存储源码并且可以预览
2011/08/26 PHP
PHP中的use关键字及文件的加载详解
2016/11/28 PHP
php实现的AES加密类定义与用法示例
2018/01/29 PHP
PHP7 mongoDB扩展使用的方法分享
2019/05/02 PHP
javascript各种复制代码收集
2008/09/20 Javascript
关于javascript中this关键字(翻译+自我理解)
2010/10/20 Javascript
分享一个我自己写的ToolTip提示插件(附源码)
2013/01/20 Javascript
一个仿糯米弹框效果demo
2014/07/22 Javascript
JS限制文本框只能输入数字和字母方法
2015/02/28 Javascript
jQuery的load()方法及其回调函数用法实例
2015/03/25 Javascript
JavaScript实现仿淘宝商品购买数量的增减效果
2016/01/22 Javascript
JavaScript下的时间格式处理函数Date.prototype.format
2016/01/27 Javascript
基于JS如何实现类似QQ好友头像hover时显示资料卡的效果(推荐)
2016/06/09 Javascript
Bootstrap中的Panel和Table全面解析
2016/06/13 Javascript
Bootstrap表单布局样式源代码
2016/07/04 Javascript
AngularJS基础 ng-model-options 指令简单示例
2016/08/02 Javascript
使用vue实现点击按钮滑出面板的实现代码
2017/01/10 Javascript
python字典基本操作实例分析
2015/07/11 Python
Python验证码识别处理实例
2015/12/28 Python
对python同一个文件夹里面不同.py文件的交叉引用方法详解
2018/12/15 Python
对Python3使运行暂停的方法详解
2019/02/18 Python
Python操作MySQL数据库的两种方式实例分析【pymysql和pandas】
2019/03/18 Python
详解pandas使用drop_duplicates去除DataFrame重复项参数
2019/08/01 Python
python3.6、opencv安装环境搭建过程(图文教程)
2019/11/05 Python
解决pytorch报错:AssertionError: Invalid device id的问题
2020/01/10 Python
PyCharm中如何直接使用Anaconda已安装的库
2020/05/28 Python
css3之UI元素状态伪类选择器实例演示
2017/08/11 HTML / CSS
美国美妆网站:B-Glowing
2016/10/12 全球购物
阿里旅行:飞猪
2017/01/05 全球购物
英语国培研修感言
2014/02/13 职场文书
员工年终考核评语
2014/12/31 职场文书
三八妇女节慰问信
2015/02/14 职场文书
思想品德课教学反思
2016/02/24 职场文书
高中语文教材(文学文化常识大全一)
2019/08/13 职场文书
springboot入门 之profile设置方式
2022/04/04 Java/Android