我正试图在我的网页上使用google的pageSpeed获得良好的结果。
我得到了很好的结果,但在页面底部放置了CSS和JS。
但我遇到了问题:我的页面渲染没有CSS,然后在加载css之后正常渲染(它像页面闪存一样产生)
我尝试通过将样式放在正文显示上来解决:无 然后添加了jquery document.ready并将显示设置为正常,但我的谷歌页面速度结果再次下降。
是否有一个解决方案/提示可以获得良好的pageSpeed结果,并且具有良好的页面呈现效果。
答案 0 :(得分:1)
不幸的是,对于HTTP / 1,我们被迫将所有css规则集捆绑到一个文件中以防止多个资源请求,HTTP / 2不会出现这种情况。
速度肯定是你想在网站上改进的东西,但重要的一点是访问者面前的可用内容有多快。您使用的资源最终会增加,这与用户等待使用页面的时间不成比例。 关注感知表现。
head
代码中CSS文件的当前问题是什么?
答:它们会阻止渲染,直到文件加载完毕。
你能做些什么?
有一个规范涉及preload
标记中使用的link
关键字,以异步方式加载css文件。
此规范定义了可以使用的preload关键字 链接元素。此关键字提供声明性提取原语 启动早期提取并将提取与资源分开 执行。
来源:w3
然而,浏览器仍未完全支持此功能。 (浏览器支持here)。
解决方案是使用基本上是polyfill的loadCSS。
新的
<link rel="preload">
标准使我们能够加载样式表 异步,不阻塞渲染,并且loadCSS提供了 该功能的JavaScript polyfill允许它工作 浏览器,以及提供自己的JavaScript加载方法 样式表。
最后,通常提出的技术如下:
head
标记中的用户信息(例如布局格式设置,这通常包括在内)。注意: