如何处理pc端的字体大小的适配问题(完美解决)
export const resetPc = () => {var wH = window.innerHeight; // 当前窗口的高度var wW = window.innerWidth; // 当前窗口的宽度var whdef = 100 / 1920; // 表示1920的设计图,使用100PX的默认值if (wW > 1400) {var rem = wW * whdef; // 以默认比例值乘以当前窗口宽度,得到该宽度下的相应FONT-SIZE值var html = document.documentElement;html.style.fontSize = rem + "px"; //适用于PC网站} else {var rem = 1400 * whdef;var html = document.documentElement;html.style.fontSize = rem + "px";}
}
- 将上面的代码在项目启动的时候进行初始加载;
- 这里主要设置的是html的根字体大小,需要进行body的字体大小的初始化,我一般设置
font-size:14px,否则会导致页面的部分字体变大; - 这里的是页面的初次加载的时候进行引入初始,但不推荐
window.addEventListener("resize", function() {})进行页面的动态监听,因为页面的窗口不像手机,可以随意的调整浏览器窗口的大小,这样会导致页面的不断重绘和重排,影响性能,所以我在上述代码中以1400宽度进行分界线,相应的body会有个对应的最小宽度,我设置的是1000px;
4.对应的代码加上去后,根字体的大小相对于1920的大小是100px;所以后面的px也要相应的用rem代替,我是通过对应的sass进行换算如下:
@function pcPx2rem($px) {$rem: 100px;@return ($px/$rem)+rem;
}
5.对应的手机端的适配和手机端类似,有webpack的可以直接用对应的插件进行转换这里就不过多的进行叙述。
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
