概述`img.decode()` 返回一个 promise,当图像可绘制时兑现,可在插入 DOM 前完成解码,从而避免插入后再解码导致的闪烁与布局偏移(CLS)。适用于 LCP 图像的稳定渲染与渐进加载策略。用法与场景在设置 `src/srcset` 后调用 `await img.decode()`,待可绘制再插入 DOM 或切换类名;结合占位与明确尺寸避免布局偏移[参考1]。与 `preload as="image"`/`fetchpriority="high"` 协作,确保 LCP 图像尽快解码与可见。工程建议提前解码关键图像;为非关键图像采用懒加载与占位;在失败时回退到 `onload` 逻辑。为响应式图片设置合理的 `sizes/srcset` 与尺寸占位。参考与验证[参考1]MDN 英文:`HTMLImageElement.decode()` 方法与行为说明:https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement/decode[参考2]web.dev:优化图像加载与渲染(解码与预加载策略):https://web.dev/articles/optimize-images[参考3]MDN 中文:响应式图片与尺寸说明(`srcset/sizes`):https://developer.mozilla.org/zh-CN/docs/Learn/HTML/Multimedia_and_embedding/Responsive_images关键词校验关键词与图像解码与稳定渲染一致。

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部
2.337970s