答案是把顺序定成先缩尺寸、再抽帧、最后才考虑换格式。一张 800 宽、3 秒、1.8MB 的动图,缩到 480 宽再压一轮通常落到 300KB 上下,首屏加载从三秒降到一秒内;换 WebP 还能再降一半,但部分老浏览器和公众号编辑器不认。两个边界先记住:单张上限 50MB;首屏一张动图别超 500KB。顺序反了等于做两遍工,格式只改编码,不改像素数量。 动图拖慢页面,原因有三个层次,多数人只盯着第一个看。 字节数是下载时间。这是最直观的一项,1.8MB 的动图在移动网络下要三秒左右才下得完。 像素数是解码时间。GIF 没有隔行扫描,浏览器要等整段下完才能开始解码,一帧 800×450 就是 36 万像素,几十帧叠起来,低端手机会明显卡一下。 数量是叠加效应。一篇文章塞四张动图,每张 500KB,加起来就是 2MB,单张压得再好也救不回来。 三者里只有尺寸同时压低字节和像素,所以它永远排第一。压缩等级只压字节,尺寸不变解码压力照旧;换格式压的是编码效率,对解码有帮助但没解决像素数。 网页动图的目标不是「越小越好」,而是「在它显示的那个尺寸上够清楚」。按位置定尺寸最省事。 最容易做错的是拿原图尺寸直接上线。文章正文栏宽通常只有 700 多像素,一张 1200 宽的动图会被浏览器缩着显示,多出来的像素全是白下载的重量,体积却按 1200 算。 ① 打开 GIF 中文网,进入「GIF 工具」里的 GIF 压缩。 ② 上传动图,单张上限 50MB。超过这个数先去裁剪页切掉边缘再进来。 ③ 在「宽(像素)」里填目标显示宽度,高度按原比例自动带出。文章正文填 480,首屏横幅填 640。 ④ 「帧数抽取」按动作密度选一档,动作平缓的去掉 30% 看不出差别;压缩等级保持 70。 ⑤ 点「开始压缩」,下载后在手机上看一遍,文字还认得出、动作还连贯就算过关。 单张已经压到 300KB 但页面还是慢,问题就不在压缩了,往下走三步。 先减数量,四张动图删到两张,重复表达同一个意思的只留一张;再拆时长,一段 8 秒的动图拆成两段 4 秒,读者按需点开;最后才换格式,在保留 GIF 版本的前提下额外提供 WebP,用 picture 标签让浏览器自己选。压完还超标,可以让 GIF 裁剪 先切掉左右留白,像素数少一截,压缩的起点就低了。 换 WebP 不会让动图变得更清楚。它只提高编码效率,256 色这个天花板没有变,渐变和肤色该有band还是有。 它也不解决兼容。部分老版本浏览器和公众号编辑器只认 GIF,换过去会直接不动。要换就得留一份 GIF 兜底,别单赌一种格式。 还有一种情况换格式没用:动图本身的帧数上百、时长超过十秒。这种该做的是重新截取,用 视频转 GIF 只留最关键的三到五秒。 1. 压到多少算够? 首屏一张别超 500KB,正文内一张别超 300KB。超过这个数,在移动网络下读者要等一秒以上才能看到动。 2. 压缩会掉帧吗? 只调压缩等级和尺寸不掉帧,勾了帧数抽取才会。想保住动作,优先缩尺寸。 3. 网页用 GIF 还是 WebP? 优先 GIF,兼容最稳。流量大、又确认访问端支持的,可以额外提供 WebP,体积通常能再降一半。 4. 动图很多,能批量压吗? 压缩页支持单次最多 60 张批量处理,统一参数一次压完,多张还能打包下载。注意批量要登录后使用。 5. 压完在网页上显示变模糊了? 多半是缩得比显示宽度还小,被浏览器又放大了一次。把宽改成和显示宽度一致,一比一显示就不会糊。 下一步:打开 GIF 压缩,按动图在页面上的实际显示宽度填尺寸(正文 480、首屏 640),帧数抽取选去掉 20%,压缩等级保持 70;下载后看文件大小是否进到 300KB 以内,再用手机流量打开页面试一次首屏加载。
加载慢到底慢在哪
不同位置该压到多大

具体怎么压,五步做完

压完还是慢怎么处理
换格式解决不了什么
网页 GIF 优化常见问题