如何处理pc端的字体大小的适配问题(完美解决)

5 篇文章 0 订阅
4 篇文章 0 订阅
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";
    }
}
  1. 将上面的代码在项目启动的时候进行初始加载;
  2. 这里主要设置的是html的根字体大小,需要进行body的字体大小的初始化,我一般设置font-size:14px,否则会导致页面的部分字体变大;
  3. 这里的是页面的初次加载的时候进行引入初始,但不推荐window.addEventListener("resize", function() {})进行页面的动态监听,因为页面的窗口不像手机,可以随意的调整浏览器窗口的大小,这样会导致页面的不断重绘和重排,影响性能,所以我在上述代码中以1400宽度进行分界线,相应的body会有个对应的最小宽度,我设置的是1000px;
    4.对应的代码加上去后,根字体的大小相对于1920的大小是100px;所以后面的px也要相应的用rem代替,我是通过对应的sass进行换算如下:
@function pcPx2rem($px) {
    $rem: 100px;
    @return ($px/$rem)+rem;
}

5.对应的手机端的适配和手机端类似,有webpack的可以直接用对应的插件进行转换这里就不过多的进行叙述。

  • 1
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值