Vue项目自动转换 px 为 rem,高保真还原设计图
2018-02-01 16:53
633 查看
前端开发中还原设计图的重要性毋庸置疑,目前来说应用最多的应该也还是使用rem。然而很多人依然还是处于刀耕火种的时代,要么自己去计算
而本文的目标就是通过一系列的配置后,在开发中可以直接使用设计图的尺寸开发,项目为我们自动编译,转换成
postcss-pxtorem:转换px为rem的插件。
自动设置根节点
因为
原理网上有很多文章分享,这里不具体解释。
1、创建
很多人写这种小工具文件会习惯性的加上闭包,这个其实是没有必要的。ES6中每个文件都是单独的一个模块。
2、在
引入文件后,查看页面的html节点,是否有被自动添加
注意:完成到这一步,也就是实现了rem布局,实际开发的时候,还是需要我们去计算对应的rem值去开发。
下一步我们就配置一下webpack,自动转换px为对应的rem值。
配置
1、安装
2、修改根目录
找到
按照上述配置项目后,即可在开发中直接使用
例如设计给出的设计图是 750 * 1136,那么可以直接在页面中写
将被转换为
注意:此方法支持
---End---
作者:猪不乐意
链接:https://juejin.im/post/5a716c4c6fb9a01cb42cac4b
来源:掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
rem值,要么依靠编辑器安装插件转换。
而本文的目标就是通过一系列的配置后,在开发中可以直接使用设计图的尺寸开发,项目为我们自动编译,转换成
rem。
技术栈
vue-cli:使用脚手架工具创建项目。postcss-pxtorem:转换px为rem的插件。
自动设置根节点html
的font-size
因为rem单位是相对于根节点的字体大小的,所以通过设置根节点的字体大小可以动态的改变rem的大小。
原理网上有很多文章分享,这里不具体解释。
1、创建rem.js
文件
很多人写这种小工具文件会习惯性的加上闭包,这个其实是没有必要的。ES6中每个文件都是单独的一个模块。// 基准大小 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() }
2、在main.js
中引入rem.js
import './utils/rem'
引入文件后,查看页面的html节点,是否有被自动添加
font-size。
注意:完成到这一步,也就是实现了rem布局,实际开发的时候,还是需要我们去计算对应的rem值去开发。
下一步我们就配置一下webpack,自动转换px为对应的rem值。
配置 postcss-pxtorem
自动转换px为rem
1、安装 postcss-pxtorem
$ npm install postcss-pxtorem -D
2、修改根目录
.postcssrc.js文件
找到
plugins属性新增pxtorem的设置
"postcss-pxtorem": { "rootValue": 32, "propList": ["*"] }
按照上述配置项目后,即可在开发中直接使用
px单位开发。
例如设计给出的设计图是 750 * 1136,那么可以直接在页面中写
body { width: 750px; height: 1136px; }
将被转换为
body { widht: 23.4375rem; height: 35.5rem; }
注意:此方法支持
import和
.vue单文件中
style。暂不支持
style中使用
@import url();
---End---
作者:猪不乐意
链接:https://juejin.im/post/5a716c4c6fb9a01cb42cac4b
来源:掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
相关文章推荐
- Vue项目自动转换 px 为 rem
- Vue项目自动转换 px 为 rem的实现方法
- vue项目使用webpack loader把px转换为rem
- web前端px和rem自动转换插件
- Scss基础——rem与px的自动转换
- 详解vue2.0 不同屏幕适配及px与rem转换问题
- vue打包的时候自动将px转成rem的操作方法
- vue中px转换成rem的设置
- vue-cli + lib-flexible + px2rem实现px自动转化为rem
- Sass/Scss基础——rem与px的自动转换
- hotcss.js如何利用sass自动生成css,快速让px转换成rem
- css大小单位px em rem的转换和详解
- 解决ios微信下vue项目组件切换并自动播放音频问题
- px-rem 一个将px转换为rem的工具
- rem与px的转换
- nuget在jenkins上不能自动还原项目依赖包---笔记
- 单位px 转换成 rem
- Rem与Px的转换[转载]
- Vue.js项目重构,轻松实现上拉加载滚动位置还原
- px自动转rem的插件 适用于sublime