当前位置: 首页 > article >正文

使用postcss动态设置fontsize,刷新时出现极小页面的问题

最近做的一个项目,使用了postcss来动态调整fontsize的大小,使用rem来让页面比例保持一致,配置如下:

// vite.config.js
css: {
   postcss: {
     plugins: [
       postcssPxtorem({
         rootValue: 192, // UI设计稿的宽度/10
         unitPrecision: 3, // 转rem精确到小数点多少位
         propList: ['*'], // 需要转换的属性 *表示所有
         selectorBlackList: ['ignore'], // 不进行px转换的选择器
         replace: true, // 是否直接更换属性值,而不添加备用属性
         mediaQuery: false, // 是否在媒体查询的css代码中也进行转换
         minPixelValue: 0, // 设置要替换的最小像素值
       }),
     ]
   }
 },
// main.js
const setRootFontSize = () => {
  let screenWidth = document.documentElement.clientWidth || document.body.clientWidth;
  let rootFontSize = screenWidth / 10;
  document.documentElement.style.fontSize = rootFontSize + 'px';
};

window.addEventListener('load', setRootFontSize);
window.addEventListener('resize', setRootFontSize);

由于ui出图是按照1920 * 1080的比例出的,所以我在配置的时候rootValue是192,在配置完成之后,页面的大小样式比例是正常的,开发的时候也都没有问题,但是在浏览器刷新当前页面的时候,会有一瞬间的极小页面出现,然后才是正常比例的页面显现
在这里插入图片描述
这个问题困扰了我整个开发过程,到最后查了一下,发现只需要在全局的css文件中配置上font-size的样式即可

html {
	font-size: 0;
}

原因分析了话,应该就是main.js在页面初始化阶段可能还没有被执行,这个时候整个page的font-size应该是默认的192px,那我们给它配置成0了话,这个时候页面在初始化阶段就不会出现了,初始化完成就直接展示出正常的页面了


http://www.kler.cn/a/416491.html

相关文章:

  • ip租期到了
  • uniapp实现列表页面,实用美观
  • 流量工程中的“LSP“,“RSVP“,“ISIS TE“,“OSPF TE“分别是什么?
  • SQL进阶技巧:非等值连接--单向近距离匹配
  • 数组和链表OJ题
  • 理解 Python PIL库中的 convert(‘RGB‘) 方法:为何及如何将图像转换为RGB模式
  • Libevent库-http通信不同请求方式的处理
  • 哪些行业对六西格玛管理方法的需求较大?
  • 基于若依框架和Vue2 + Element-UI 实现图片上传组件的重写与优化
  • Python 3 教程第34篇(MySQL 数据库连接 - PyMySQL 驱动)
  • 表征对齐在训练DiT模型中的重要性
  • PHP ODBC:连接数据库的桥梁
  • ASP.NET Core面试题汇总
  • 首发VM手眼标定xml文件点位取出以及转其他格式
  • 【Python】深入理解Python的字符串处理与正则表达式:文本处理的核心技能
  • A054-基于Spring Boot的青年公寓服务平台
  • docker从入门到入土
  • 【Linux】常见指令 + 权限概念
  • 计算机网络:TCP/IP 协议职责和常见的三种模型介绍
  • HCIA笔记5--STP协议
  • Django-Vue3-Admin - 现代化的前后端分离权限管理系统
  • 53 基于单片机的8路抢答器加记分
  • MySql(面试题理解B+树原理 实操加大白话)
  • 如何在HarmonyOS NEXT中处理页面间的数据传递?
  • logminer挖掘日志归档查找问题
  • 深入理解Oracle DB的锁和闩