propList: ['*'], // 需要转换的属性,'*'表示全部属性,也可以指定['font-size', 'margin*']等 selectorBlackList: [], // 忽略转换的选择器,比如['body', 'html'] replace: true, // 是否直接替换而不是添加回退 mediaQuery: false, // 是否允许在媒体查询中转换px min
// 步骤2 if (rule.selector.includes(':hover')) { let focuses = [] for (let selector of rule.selectors) { if (selector.includes(':hover')) { let replaced = selector.replace(/:hover/g, ':focus') if (!hasAlready(rule.parent, replaced)) { focuses.push(replaced) } } } // 步...
rule.selector = '.custom-prefix-' + rule.selector; }); }; }); 1. 2. 3. 4. 5. 6. 7. 8. 常见问题与避免方法 问题3:自定义插件修改AST时破坏原有CSS结构 在编写自定义插件时,直接删除或错误修改AST节点可能导致CSS结构损坏,影响样式正确性。 避免方法:深入理解PostCSS AST结构,谨慎操作节点。使...
字符selectorBlackList:[],//需要忽略的CSS选择器,不会转为视口单位,使用原有的px等单位。可以使正则表达式,普通字符默认是包含匹配replace:true,mediaQuery:false,//允许在媒体查询中转换 px。minPixelValue:0,exclude:/node_modules/i}
/* input */.selector{margin-bottom:20px;}/* output, assuming base font size is 1rem */.selector{margin-bottom:1.25rem;} PostCSS 会在每一个px值出现并运行计算之前处理声明,将其转换成rem的值。注意:因为 PostCSS 模块化的本质,你需要使用postcss-pxtorem才能完成转换。
{unitPrecision:5,propList:['*'],selectorBlackList:[],replace:true,mediaQuery:false,minPixelValue:0} Type:Object | Null platform(String)(必填) weapp或h5或rn designWidth(Number|Function)(必填) 640或750或828 unitPrecision(Number) The decimal numbers to allow the REM units to grow to. ...
selectorBlackList: [], // (Number) 设置最小的转换数值,如果为1的话,只有大于1的值会被转换 minPixelValue: 1, // (Boolean) 媒体查询里的单位是否需要转换单位 mediaQuery: false, // (Boolean) 是否直接更换属性值,而不添加备用属性 replace: true, ...
false媒体查询的代码可用,true不可用exclude: 'ignore',replace: true, // 替换包含rem的规则,而不是添加回退minPixelValue: 1, // 需要转换的最小值,一般1px像素不转换,以上才转换unitPrecision: 6, // 转换成rem单位的小数点后的保留位数selectorBalckList: ["van"], // 匹配不被转换为rem的选择器},}...
默认vwselectorBlackList: [],// 指定不转换为视窗单位的类名,minPixelValue:1,// 默认值1,小于或等于1px则不进行转换mediaQuery:true,// 是否在媒体查询的css代码中也进行转换,默认false// replace: true, // 是否转换后直接更换属性值exclude: [/node_modules/],// 设置忽略文件,用正则做目录名匹配...
selectorBlackList: ["wrap"],// 指定不转换为视窗单位的类名, minPixelValue:1,// 默认值1,小于或等于1px则不进行转换 mediaQuery:true,// 是否在媒体查询的css代码中也进行转换,默认false replace:true,// 是否转换后直接更换属性值 exclude: [/node_modules/],// 设置忽略文件,用正则做目录名匹配 ...