页面速度 HTML 检查清单
粘贴页面的 HTML,找出阻塞渲染的脚本、没有尺寸或懒加载的图片、缺少 viewport、@import、document.write 等问题。
打开页面,使用“查看网页源代码”(Ctrl+U),全部复制后粘贴到这里。
添加 defer(独立脚本可用 async),让浏览器在脚本下载前就能渲染页面。
<script src="https://cdn.example.com/analytics.js">
设置 width 和 height(或 CSS aspect-ratio),让浏览器预留空间,避免布局偏移(CLS)。
<img src="/hero.jpg" alt="Hero">
为首屏不可见的图片添加 loading="lazy"。
<img src="/b.png" alt="B" width="300" height="200">
提供 WebP 或 AVIF 格式(例如用 <picture>)——同等画质下通常小 25–50%。
<img src="/hero.jpg" alt="Hero"> <img src="/a.png" alt="A" width="300" height="200"> <img src="/b.png" alt="B" width="300" height="200">
为视频、地图等嵌入内容添加 loading="lazy"。
<iframe src="https://www.youtube.com/embed/xyz">
添加 <meta name="viewport" content="width=device-width, initial-scale=1"> 以便在移动端正确显示。
<meta name="viewport">
将 <meta charset="UTF-8"> 作为 <head> 中的第一个元素。
<meta charset="UTF-8">
为重要的第三方来源添加 <link rel="preconnect">,提前建立连接。
cdn.example.com
已通过的检查(8)
- ✓ 阻塞渲染的样式表很少
- ✓ 没有 CSS @import
- ✓ 内联 @font-face 规则已设置 font-display
- ✓ 第一张图片没有懒加载
- ✓ 没有使用 document.write()
- ✓ 内联代码体积较小
- ✓ DOM 大小合理
- ✓ HTML 大小合理
什么是 页面速度清单?
这个工具对照一份常见前端性能问题的清单来审查页面的 HTML 源码,并说明如何修复每一项:阻塞渲染的脚本和样式表、CSS @import、没有 font-display 的 @font-face、没有尺寸或懒加载的图片、被懒加载的首屏大图、旧式图片格式、没有懒加载的 iframe、缺少 viewport 或 charset、document.write、过大的内联代码、缺少 preconnect,以及过大的 DOM 或 HTML。
如何使用 页面速度清单
- 打开你的页面,使用“查看网页源代码”(Ctrl+U),复制全部内容。
- 粘贴 HTML 并点击“分析”。
- 查看按影响程度排序的发现,有问题的标签会作为示例显示。
- 展开“已通过的检查”,查看哪些已经没有问题。
示例
The sample page (analytics.js without defer, hero.jpg without size, iframe without lazy, no viewport)
8 possible improvements: 1 render-blocking script, 1 image without width/height, 1 below-the-fold image without lazy loading, 3 JPEG/PNG images, 1 iframe without lazy loading, no viewport, no charset, 1 third-party origin without preconnect
示例页面包含没有 defer 的 analytics.js、没有尺寸的 hero.jpg、没有懒加载的 iframe 和缺失的 viewport。
何时使用 页面速度清单
适合对模板或页面做快速的静态审查,或在无法运行 Lighthouse 时使用。它不测量真实加载时间或 Core Web Vitals,也看不到由 JavaScript 添加的资源;实验室数据和真实用户数据请使用 Lighthouse 或 PageSpeed Insights。
页面速度清单 的工作原理
HTML 在去除注释后,由你浏览器中的轻量标签解析器扫描。每条规则检查特定的标签和属性,例如 <head> 中没有 async、defer 或 type=module 的外部 <script> 标签、同时缺少 width 和 height 的 <img>、前两张之后没有 loading="lazy" 的图片,或者元素总数超过 1,500 个。脚本和样式表的第三方来源会与 preconnect 和 dns-prefetch 链接进行比较。不会加载任何页面,也不会运行任何 JavaScript。
常见用例
- 找出主题头部中阻塞渲染的脚本。
- 发现因缺少 width 和 height 而导致布局偏移的图片。
- 检查首屏大图没有被懒加载(这对 LCP 不利)。
- 在上线之前审查 HTML 邮件或落地页模板。
常见问题
这和 Google PageSpeed Insights 一样吗?
不一样。PageSpeed Insights 会加载页面并进行测量。这个工具只读取你粘贴的 HTML,所以速度很快且保护隐私,但无法测量速度。
为什么第一张图片不应该懒加载?
首屏上最大的图片通常就是 Largest Contentful Paint 元素。懒加载会把它推迟到布局之后,从而损害 LCP。
每个脚本都应该使用 defer 吗?
需要 DOM 且按顺序运行的脚本应使用 defer;统计这类独立脚本可以使用 async。内联的关键代码应保持精简。