Image Compressor
← 返回博客

网页图片优化:让页面更快、SEO 更好的 8 个实操手段

图片体积如何影响 LCP 与跳出率

LCP 是最大内容绘制的缩写,衡量首屏最大那块内容完成渲染的时间。在多数页面上,这块内容就是一张图片:文章头图、商品主图、横幅广告。浏览器要等图片字节下载完、解码完才能把它画出来,所以图片体积直接写进了 LCP 的计算里。

影响链条并不复杂。图片越大,需要的带宽越多、下载时间越长;在移动网络下,这段等待会从几百毫秒涨到几秒;用户盯着空白区域或不断跳动的布局,耐心迅速消耗,跳出率随之上升。搜索引擎也越来越重视真实用户体验指标,页面慢会间接拖累排名。反过来看,把图片处理好,往往是不改动代码结构就能拿到的最大一笔性能收益。

压缩图片是性价比最高的一步,但它不是全部。格式、尺寸、加载策略、文本标注,每一环都在影响速度与可发现性。

手段一:先选对格式

格式选错,后面所有优化都会事倍功半。照片用 PNG 是常见错误:同一张实拍图,PNG 往往比 JPEG 大好几倍,画质还没有优势,因为 PNG 的无损特性对连续色调几乎无能为力。反过来,把需要透明或硬边缘线条的图标存成 JPEG,会得到一圈模糊的彩色噪点。

格式 压缩类型 透明 动画 典型用途
JPEG 有损 不支持 不支持 照片、色彩丰富的实拍图
PNG 无损 支持 不支持 图标、截图、需要透明的素材
WebP 有损或无损 支持 支持 现代浏览器下的通用首选
AVIF 有损或无损 支持 支持 追求极致体积,需确认兼容性
SVG 矢量 支持 支持 图标、logo、简单几何图形

选型顺序可以简化成一句:照片优先 WebP,兼容性有顾虑就退回 JPEG;图形与透明素材优先 WebP 或 SVG,必须无损时用 PNG。用 图片压缩工具 能在压缩的同时完成 JPG、PNG 到 WebP 的转换,省掉一次额外转码。

手段二:压缩到位,而不是象征性压一下

很多站点确实做了压缩,但只是把质量从 100 降到 95,体积几乎没有变化。JPEG 的质量滑杆在 75 到 85 区间通常是最佳平衡点:再往上体积快速膨胀而肉眼难以分辨,再往下则开始出现块状伪影。工具默认给 80 是有道理的,它会读取原图量化表估算原始质量,原图本身就低于 80 时不再继续降质,避免二次损失。

PNG 没有质量可调,只能靠减少颜色数;GIF 同理,靠调色板减色。每一类格式都有自己真正有效的那个参数,把滑杆停在默认值上点到为止,算不上优化。批量处理时建议先拿三五张有代表性的图片试参数,确认观感后再全量跑。

手段三:按展示尺寸出图,不要靠 CSS 缩放

这是最容易被忽略、又最冤的一类浪费。一张 3000 像素宽的原图放进 800 像素宽的容器,浏览器依然要下载和解码完整的 3000 像素版本,多出来的像素全被丢掉。CSS 只能改变显示大小,改变不了下载体积。

正确做法是先确认图片在页面上实际占多宽,再按这个宽度出图。常见做法是取展示宽度乘以 1.5 到 2 倍以照顾高密度屏幕,但不要无脑按原图上传。把 4000 像素的产品图直接塞进列表页,是很多站点体积失控的主因。导出前先缩放、再压缩,顺序不能颠倒,否则等于为大图付了两次代价。

手段四:用 srcset 做响应式图片

同一个页面在不同设备上的展示宽度差异很大:手机可能只需要 400 像素宽的图,桌面可能需要 1200 像素。如果只提供一张大图,手机用户就要为用不到的像素买单。srcset 让浏览器根据设备像素比和视口宽度自行挑选合适的那一张。

写法上,srcset 列出候选项及各自宽度,sizes 告诉浏览器图片在不同断点下的展示宽度。加上 sizes 很关键,只写 srcset 而不写 sizes,浏览器会假定图片始终占满整个视口,可能选到过大的版本。配套的 picture 元素还可以按格式做降级,例如优先给 WebP,不支持时回退 JPEG。

手段五:懒加载与首屏优先

懒加载让首屏之外的图片延后到接近视口时再加载,把带宽优先留给用户真正看到的内容。现代浏览器支持原生 loading 属性,加上 loading 等于 lazy 即可,不需要额外脚本。但要避免一个常见错误:把首屏主图也设成懒加载,那会让它排在脚本之后才开始下载,直接拖慢 LCP。

正确的策略是分层:首屏关键图片用 eager 并加 fetchpriority 提示,让浏览器尽早取;其余图片一律懒加载。同时给图片写上宽高属性或宽高比,避免加载完成后页面跳动。布局偏移同样会伤害体验与评分,懒加载解决的是下载时机,宽高比解决的是稳定性,两者不能互相替代。

手段六:写有意义的文件名

图片文件名是搜索引擎理解图片内容的信号之一。相机导出的 DSC_04821.jpg 或设计稿里的未标题-1.png 不携带任何信息,等于浪费一次说明机会。改成描述性的英文或拼音短横线命名,例如 red-running-shoes-side.jpg,既方便自己日后检索,也对图片搜索友好。

命名要克制:用两到四个词说清主体,不要堆砌关键词,也不要写成一长串。文件名同时出现在 URL 里,过长会影响可读性与分享时的观感。

手段七:写清楚 alt 文本

alt 文本有三个作用:图片加载失败时替代显示、屏幕阅读器朗读给视障用户、帮助搜索引擎理解图片内容。写得好不好,直接影响无障碍体验和图片搜索表现。

判断标准是,如果把图片拿掉,这句话能不能替代它传递信息。装饰性图片用空 alt 让辅助技术跳过;不要在 alt 里堆砌关键词,那既无助于排名也伤害可读性。列表页的商品图,alt 里带上品牌、型号、颜色等比一句图片有用得多。链接里只有图片时,alt 需要说明链接的去向,而不是描述图片本身长什么样。

手段八:精简 EXIF 与元数据

数码照片的 EXIF 里可能带着相机型号、拍摄参数、内嵌缩略图,甚至 GPS 坐标。这些数据对网页展示毫无用处,有时还会泄露拍摄地点这类隐私信息。一张照片的 EXIF 加上内嵌缩略图,占用几十到几百 KB 并不罕见,对手机拍摄的照片尤其明显。

移除元数据几乎总是无损的,画质完全不变。需要注意一点:如果图片是靠 EXIF 方向标记来正确显示的,剥离时要把方向真正应用到像素上,否则竖拍照片会变成横的。用 图片压缩工具 处理时会自动移除 EXIF 与 GPS,省去手工清理的步骤。

发布前检查清单

逐条过一遍,比事后凭感觉判断可靠:

  • 格式选对了吗?照片不是 PNG,图标不是 JPEG。
  • 质量或颜色数调到位了吗?不是停在默认值上。
  • 图片尺寸与展示尺寸匹配吗?没有用 CSS 缩小大图。
  • 有 srcset 与 sizes 吗?移动端拿到的不是桌面大图。
  • 首屏图是 eager 加高优先级、其余是 lazy 吗?
  • 每张图都有宽高或宽高比,不会造成布局偏移吗?
  • 文件名是描述性的吗?不是相机默认编号。
  • 内容图片都有 alt,装饰图片用空 alt 吗?
  • EXIF 与 GPS 元数据清掉了吗?方向是否正确?
  • 跑一遍体积体检,首屏总字节是否在可接受范围?

清单之外还要记住一点:压缩图片解决的是每张图有多重,而页面速度还受有多少张图、什么时候加载、服务器怎么传影响。图片再小,如果全部挤在首屏同时请求,同样会拖慢速度。压缩是必要的一环,不是全部。需要更细的分格式参数可以看 图片压缩完整教程,也可以按目标体积反向设定,用 按目标体积压缩 精确控制单张图片的字节数。

想直接动手试?打开 在线图片压缩 - 免费压缩 JPEG、PNG、WebP ,把图片拖进去即可,全程在浏览器本地处理。