优化 CSS 以加快页面加载速度

Avatar of Chris Coyier
Chris Coyier

DigitalOcean 为您旅程的每个阶段提供云产品。立即开始使用 200 美元的免费额度!

一篇简单的文章,其中包含 Tomas Pustelnik 提供的一些性能数据。它很好地提醒我们,CSS 是网页性能考虑的重要组成部分,而且理由充分。

每当 [浏览器] 遇到任何外部资源(CSS、JS、图像等)时,它都会为其分配下载优先级并启动下载。优先级很重要,因为某些资源对于渲染页面至关重要(例如,主要样式表和 JS 文件),而其他资源可能不太重要(例如图像或其他媒体类型的样式表)。

对于 CSS,此优先级通常较高,因为样式表对于创建 CSSOM(CSS 对象模型)是必要的。要渲染网页,浏览器必须构建 DOM 和 CSSOM。

这就是为什么 CSS 通常被称为“阻塞”资源。在某种程度上,这是可取的:我们不希望看到未设置样式的网站闪烁。但是,当我们使 CSS 更小的时候,我们会获得真正的性能提升,因为它下载、解析和应用的速度更快。

除了文章中的技巧之外,我相信原子/全实用程序 CSS 的倡导者会很乐意指出,这些方法的样式表通常非常小,因此性能更高。CSS-in-JS 方法有时会将样式捆绑到脚本中,因此,公平地说,您通过不在那里加载 CSS 而在顶部获得了一点性能提升,但在此过程中会因增加 JavaScript 捆绑包大小而导致性能下降。(但我还没有看到一项进行公平比较的研究,所以我不确定结果是持平还是如何。)

直接链接 →