网页加载慢,很多时候问题不在代码,而在图片。一张没有处理过的高清大图,可能比整页文字加起来还占资源。图片优化不需要复杂工具,按几个方向整理一遍就能有明显改善。
先控制尺寸和比例
最常见的浪费是把远大于展示区域的原图直接上传。浏览器并不会因为图大就更清晰——它只会先花时间把图下载下来,再缩小显示。更合理的做法是先确定图片在页面上实际占据的宽度,再按需要导出。比例也要提前固定,常见的做法是按统一的宽高比裁剪,避免在前端被拉伸变形。
写好替代文字
图片的替代文字有两个作用:图片加载失败时告诉用户这是什么,以及帮助屏幕阅读器等辅助工具描述内容。它不是关键词的堆放处,而应该是对图片内容的准确说明。装饰性的元素(纯色分隔线、背景纹理)可以留空,避免干扰朗读;有实际信息的图片——产品图、示意图、截图——则值得写清楚它展示了什么。
按类型选择压缩方式
压缩不是一律拉到最低质量。照片类内容适合有损压缩,画质损失肉眼几乎看不出来,而体积能明显下降;图标、标志这类需要锐利边缘的图形,则适合保留清晰边缘和透明通道的格式。近些年主流浏览器普遍支持的 WebP、AVIF 等新格式,在同等画质下体积通常更小,值得作为默认选择;对兼容性要求高的场景,可以保留一份传统格式作为后备。另外,图片里携带的拍摄设备、定位等元数据,如果不是刻意保留,也可以一并去掉。
分发与加载方式
即使本地已经优化过,跨地区访问仍可能因为链路长而变慢,这时内容分发网络可以明显改善体验——把图片缓存到离访客更近的节点上。首屏之外的图片可以延迟加载:等用户滚动到附近再请求,减少打开页面时的等待。缓存周期则按图片的更新频率来定,经常更换的促销图不宜设得过长,长期不变的素材可以设得更久一些。
图片优化是一项做过一次就长期受益的工作。把规则固定下来、写进内容发布的流程里,比每次上线前临时处理更省事。
