fetchpriority属性用于手动控制图片加载优先级,取值为high、low或auto,适用于和标签,Chrome 101+等支持,Firefox/Safari忽略但安全降级。

在HTML5中,可以通过 fetchpriority 属性手动控制特定图片的加载优先级,这是浏览器原生支持的 Priority Hints(优先级提示)机制之一,无需JavaScript干预,直接在HTML标签中声明即可。
使用 fetchpriority 属性指定图片优先级
该属性适用于 和 标签,取值为 high、low 或 auto(默认)。浏览器据此调整资源获取顺序和带宽分配。
-
关键首屏图(如顶部大Banner、头像)建议设为
fetchpriority="high",促使浏览器提前发起请求 -
折叠区或懒加载图(如页面底部商品列表图)可设为
fetchpriority="low",降低对首屏渲染的影响 -
fetchpriority="auto"由浏览器基于位置、尺寸、是否在视口等自动判断,适合默认行为
配合 loading 和 decoding 属性协同优化
单独设置 fetchpriority 效果更佳,但需注意它不替代懒加载逻辑。实际使用中应结合其他属性:
生成可在 deepbi 沙箱 iframe 内运行或作为独立文件运行的交互式 HTML 页面,使用 `window.deepbi` JS SDK 实现数据查询、空间管理、文件浏览及用户操作。当用户提出以下需求时启用该能力: - 创建 KPI 仪表盘、数据表格、文件浏览器、成员列表、管理页面; - 明确要求“转成 dhtml”、“转译成 HTML”、“把 XX 页面转成……”、“控制台页面”、“管理后台”、“DeepBI 页面迁移”; - 提及位于 `apps/console/src/featur
- 首屏关键图:同时用
loading="eager"+fetchpriority="high",确保立即加载 - 非首屏图:推荐
loading="lazy"+fetchpriority="low",既延迟加载又降低优先级 - 若需快速解码(如动画帧),可加
decoding="async"避免阻塞主线程
兼容性与降级处理
目前 fetchpriority 已被 Chrome 101+、Edge 101+、Opera 87+ 原生支持,Firefox 和 Safari 尚未支持,但会安全忽略该属性,不影响渲染。
- 无需 JavaScript 检测或 polyfill,不支持时自动回退到浏览器默认策略
- 服务端渲染(SSR)或静态 HTML 中可直接写入,无运行时开销
- 避免与
importance(已废弃)混用,仅保留fetchpriority
实际代码示例
以下是一个典型用法对比:
fetchpriority="high" loading="eager">
fetchpriority="low" loading="lazy">
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!










