postcss-px2rem不能转换js设置的px和内联样式

2,070 阅读1分钟

问题:

移动端用px2rem适配,写样式的时候可以用px,但是js动态设置的px和内联的px不能转成rem。

原因:

px2rem只会将css中px编译为rem,配合js根据不同的dpr,修改meta的viewport值和html的font-size

解决办法:

1.对于已知的样式,写成动态class形式

2.未知的样式,可以采用px/htmlSize的形式换算成rem

this.htmlSize = document.documentElement.style.fontSize.replace("px", "");

dom.style.width = `${px/htmlSize}rem`