移动端根元素html的font-size设置
px, pt
移动端的适配需要用rem来做适配开发(rem是依据根元素 html的font-size )
我们在开发的时候,进行调试页面的宽度一般是375PT,这个pt指的是逻辑像素或逻辑分辨率,而一般移动端的设计稿给的是750(有时是640)宽的设计图,这个750指的是px,也就是物理像素。
px和pt一般是一个倍数关系,一般是pt是px的2倍,个别设备也不一样需要去查比如:
这个Reader就是倍数关系
js动态计算根元素font-size
window.onload = window.onresize = function() {
var e = document.getElementsByTagName("html")[0].getBoundingClientRect().width,
t = document.getElementsByTagName("html")[0];
console.log(e)
t.style.fontSize = e > 750 ? "100px" : 100 * (e / 750) + "px"
};
var view_width = document.getElementsByTagName("html")[0].getBoundingClientRect().width,
_html = document.getElementsByTagName("html")[0];
_html.style.fontSize = view_width > 750 ? "100px" : 100 * (view_width / 750) + "px";
这样一般设置完根元素在50px左右,在750的设计图中,比如量到一个div是500px, 那么开发的时候,他的rem应该设置为"500/50/2=2.5rem",如果是640的设计图,那么把上述代码的750换成640就可以了,然后div的rem为“500/根元素的font-size/2”,除以2是因为pt和px是2倍关系(如果该设备是3倍关系 就除以3)