当前位置: 代码迷 >> 综合 >> vue中使用postcss-pxtorem
  详细解决方案

vue中使用postcss-pxtorem

热度:74   发布时间:2023-12-25 04:01:52.0

postcss-pxtorem是PostCSS的插件,用于将像素单元生成rem单位。 点击

下载

npm install postcss-pxtorem --save-dev

在vue.config.js中配置

 css: {loaderOptions: {postcss: {plugins: [require('postcss-pxtorem')({rootValue :32, propList   : ['*'],minPixelValue:2,}),]}}},

参数

{rootValue: 16,unitPrecision: 5,propList: ['font', 'font-size', 'line-height', 'letter-spacing'],selectorBlackList: [],replace: true,mediaQuery: false,minPixelValue: 0,exclude: /node_modules/i
}rootValue (Number | Function):设置根元素字体大小或根据输入参数返回根元素字体大小
unitPrecision (Number):允许REM单位增长的十进制数字
propList (Array) :属性的选择器,*表示通用
selectorBlackList (Array):忽略转换正则匹配项。如果个别地方不想转化px。可以简单的使用大写的 PX 或 Px
replace (Boolean) :替换包含rems的规则
mediaQuery (Boolean):允许在媒体查询中转换px
minPixelValue (Number) :设置要替换的最小像素值
exclude (String, Regexp, Function) :要忽略并保留为px的文件路径

进行适配

const setHtmlFontSize = () => {const htmlDom = document.getElementsByTagName('html')[0];let htmlWidth = document.documentElement.clientWidth || document.body.clientWidth;if (htmlWidth >= 750) {htmlWidth = 750;}if (htmlWidth <= 320) {htmlWidth = 320;}htmlDom.style.fontSize = `${htmlWidth / 7.5}px`;};window.onresize = setHtmlFontSize;setHtmlFontSize();

 

  相关解决方案