技术背景
开发移动端Web项目的时候,有一种弹性布局的方案是基于rem开发项目。
简单来说,应用淘宝 lib-flexible(虽说有新方案vw,暂时先不讨论)后,会根据窗口宽度大小在document.body节点计算生成font-size。然后该页面的所有节点元素可以使用rem,依据根节点的font-size计算大小
rem作用于非根元素时,相对于根元素字体大小;rem作用于根元素字体大小时,相对于其出初始字体大小 —— MDN
因为,项目中css基于less预处理,所有开始考虑如何设计一个mixin,让自己不要手动计算设计稿尺寸对应到实际浏览器中的rem,而是可以自动计算~
初期方案 -- mixin
通过接收原设计稿像素尺寸,最后可以计算出相应的rem,mixin简单如下:
@default-w: 375px;
.convert(@px,