vue-cli2、vue-cli3的postcss-pxtorem插件 px转换rem

可查看文档:https://github.com/cuth/postcss-pxtorem  

在vue-cli2中的设置:
在.postcssrc.js文件中设置:

module.exports = {
  "plugins": {
    "postcss-pxtorem":{
      rootValue: 75,
      unitPrecision: 5, // 最小精度,小数点位数
      propList: ['*','!font*'], // !不匹配属性(这里是字体相关属性不转换)
      selectorBlackList: [],
      minPixelValue:2 // 替换的最小像素值
    }
  }
}

rootValue: 根元素(html)的字体大小。可根据js动态设置的html的font-size大小进行设置。(我这里是用了flexible.js动态设置html字体大小又是根据ipone6来设计的图,所以我这里是75)

unitPrecision: 计算后的最小精度值,默认保留的就是5位

propList: 设置哪些属性可以从px变为rem。“!”表示不匹配,“ !font* ”表示不匹配字体相关属性

selectorBlackList: 设置哪些属性选择器(这里是属性选择器)忽略并保留px

minPixeValue: 替换的最小像素值。1px不想被替换就设置为2

如果minPixeValue位置为2了,但想设置border-radius:2px时,这个2px不替换成rem,可将2px改写成2PX(大写字母)或2Px(字母一大一小)

其他参数:
mediaQuery: Boolean类型,是否允许在媒体查询中转换px

在vue-cli3的设置

在package.json文件中:

"postcss": {
    "plugins": {
      "autoprefixer": {},
      "postcss-pxtorem": {
        "rootValue": 75,
        "unitPrecision": 5, 
        "propList": ["*","!font*"], 
        "selectorBlackList": [],
        "minPixelValue":2 
      }
    }
  }

在网上查到是在vue.config.js中这样设置:

但是自己写的vue组件并不能把px转成rem,框架的px却可以转成rem

module.exports = {
    css: {
        loaderOptions: {
          postcss: {
            plugins: [
              require('postcss-pxtorem')({ // 把px单位换算成rem单位
                rootValue: 75,
                unitPrecision: 5, // 最小精度,小数点位数
                propList: ['*','!font*'], // !不匹配属性(这里是字体相关属性不转换)
                selectorBlackList: [],
                minPixelValue:2 // 替换的最小像素值
              })
            ]
          }
        }
      },
}

 

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值