移动端 px与rem换算问题
今天看文章的时候,看到一段代码不是很理解,所以在这里求教下给。
文章地址:
https://www.cnblogs.com/azhai...
不理解的代码段:
docEl.style.fontSize = 20 * (clientWidth / 320) + 'px';
请问为什么上面的代码就可以求出根元素的font-size? 谢谢
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
1:1
的比例。此时的font-size就是20,对不,相当于给了html的font-size一个默认值20px
。看这个代码是根据屏幕宽度来求相对于320宽度的字体大小,320宽度下是20px,480宽度下是30px,640宽度下是40px
这老哥这种操作我不是很懂,想让跟元素字体大小为10px,可以直接
html{ font-size:10px;}
吧?为什么要先搞成16px再乘以62.5%?回到你说的这个式子.
320是定义的手机屏幕的最小宽度
clientWidth是
document.documentElement.clientWidth
,也就是当前的窗口宽度.他提到了当屏幕宽度为640的时候,默认跟节点字体大小为20px,不过这个js设置的是40px.
(当前屏幕宽度/320)*20
我们用console来验证一下.
这个事件在页面load和resize的时候触发,就是每次窗口变化就重置根节点字体大小,相当于更改了rem的长度,来实现页面适配.
他那个写法会把字体设置的比较大,可以理解为整个屏幕的宽度就是16rem.
实际上我是写后端的..有不对的地方请指出...