我想知道如何将整个现有单位(em/rem(转换为像素?
现在我正在使用Vuesax UI为任何网站/模板制作插件(重叠(
但他们使用的是像rem或em这样的单位。
如何将整个输出单位转换为px容易(任何技巧(?
例如,我想在vue.config.js中放入一些config/plugin
module.exports = {
configureWebpack: {},
css: {},
chainWebpack: config => {}
}
很抱歉,浏览器会实时将rem
和em
转换为px
,但它们是动态值,与像素不同,在编译过程中无法静态设置。
请记住,rem
s(因此em
s也可以(可能取决于浏览器中设置的用户声明,这意味着如果网站使用rem
s,它将适应用户在浏览器中设定的字体大小,这绝对是你无法预测或强制执行的。
我见过一些网站在根元素中设置像素字体大小,这样你就可以在任何情况下知道rem
和em
的值,但这是一种糟糕的做法,而且你说过你想让你的插件在任何网站/模板上工作,所以我认为这对你来说都不是一个可行的解决方案。
此外,忽略浏览器的字体大小问题,我个人认为em
s将很难(或不可能(静态计算,因为当用于字体大小取决于父元素和元素本身时,后者看起来没有太大问题,但前者肯定是。
总而言之,我认为您试图实现的是不可行的,因为从根本上讲,rem
s、em
s和px
s是不同的概念,只能在编译时由css解析系统转换为像素。