我在nuxt移动端项目中,使用rem计算根节点字体大小,但是有一个问题:打开页面,浏览器运行到这段代码时,页面已经有内容在展示了;根节点字体大小赋值后,会让页面内容重绘,导致 页面在第一次打开的时候,会有css的扭曲变动,请问如何避免这样的情况发生?
我在nuxt移动端项目中,使用rem计算根节点字体大小,但是有一个问题:打开页面,浏览器运行到这段代码时,页面已经有内容在展示了;根节点字体大小赋值后,会让页面内容重绘,导致 页面在第一次打开的时候,会有css的扭曲变动,请问如何避免这样的情况发生?
设置初始字体大小样式: 在CSS中为根节点设置一个初始的字体大小,以避免在计算和设置REM单位之前出现明显的字体尺寸变化。这样可以确保页面在渲染初始内容时已经具有一致的字体大小。
使用媒体查询: 可以使用媒体查询来适配不同的屏幕大小。可以在不同屏幕尺寸下使用不同的根字体大小,避免在加载时发生明显的变化。
8 回答4.7k 阅读✓ 已解决
6 回答3.4k 阅读✓ 已解决
5 回答2.8k 阅读✓ 已解决
6 回答2.3k 阅读
5 回答6.3k 阅读✓ 已解决
4 回答2.3k 阅读✓ 已解决
5 回答1.3k 阅读✓ 已解决
把计算根节点字体那一段 JS 放到页面的最前面, head 里面
如果你了解过 flexible.js 的话,可以看到它的介绍里面就有。
1、内联这段 JS
2、放到在所有资源加载之前
参考: