【问题标题】:Async or defer (or delay) CSS load异步或延迟(或延迟)CSS 加载
【发布时间】:2021-08-04 01:15:15
【问题描述】:

我正在研究我的网站速度得分并尝试提高我的 Pagespeed(删除未使用的 CSS 报告)。

首先我关注了这个页面:load CSS simpler,我已经通过以下方式延迟,但页面速度不断提醒我/css/second-style CSS 文件没有延迟:

<link rel="stylesheet" href="/css/second-style.css" media="print" onload="this.media='all'">

所以,我尝试了另一种方式,使用:loadCSS,我是这样做的:

<script src="loadCSS.js"></script>
<script>
  loadCSS( "/css/second-style.css" );
</script>

我认为这两种方法非常清晰和简单,它们应该可以工作但页面速度不批准/css/second-style.css

知道 2021 年是否必须采取不同的做法,或者我的错误是什么? 还有其他方法可以延迟 CSS 加载吗?

【问题讨论】:

  • 不确定延迟 CSS 是否是正确的方法。 “删除未使用的 CSS 报告”的意思是您的 CSS 包含页面上未使用的样式。尝试将您的 CSS 拆分为页面上使用的 部分,内联这些样式并通过外部 CSS 文件加载其余部分。
  • @brombeer 是的,我明白,即便如此,如果我在页面加载结束时加载这些 CSS(延迟它们),即使它们是“未使用的 CSS”也不会有问题。
  • 然后把它们移到最后?也许就在&lt;/body&gt; 之前。我不知道这是否会影响网站速度得分,或者它是否仍会说您有未使用的 css。
  • @freedomn-m 是的,如果我放在那里问题仍然存在:/

标签: javascript php html jquery css


【解决方案1】:

即使你最后或在开始时加载 CSS,总加载时间也是一样的.. 尝试minifying CSS 并使其成为单个文件(通过减少请求数量)

要进一步提高速度,您还可以尝试Compressing JavaScriptHTML 还有Image sprit

【讨论】:

  • 是的,“总”负载是一样的,但是感知的加载时间会不一样。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-01-15
  • 1970-01-01
  • 1970-01-01
  • 2016-01-30
  • 2016-02-02
  • 2013-08-01
  • 1970-01-01
相关资源
最近更新 更多