最近做一个移动端的项目,需要做到移动端适配。
曾经做过以下几种适配方案,但都不理想:
- 直接设置根元素字号,再用rem作单位。
- 使用淘宝flexible.js。
- 判断设备大小,再设置根元素字号大小,用rem作单位。
以上三种方案原理,是利用rem以根元素(html)字体大小进行计算。随着浏览器对vw单位的支持,使用vm作单位更适合。
本文旨在讲述如何使用vm做适配。
1.直接vm设置根元素字体大小
众所周知视口宽度为100vw,假设设计图为750px,那么1px应该对应多少vw呢?
我们来列个公式:
750 p x 100 v w = 1 p x x \frac {750px} {100vw} = \frac {1px} {x}