界面已本地化;技能介绍与说明文档按所选语言由 AI 自动翻译,代码、命令、路径和专业术语保留原文,以原作者文档为准。
探索技能
开发与工程 · SKILL.md

picture-element

picture-element

【开发与工程】Use when reviewing image assets, markup, and CDN or build transforms related to Use <picture> with an <img> fallback. Check encoded size, rendered size, loading strategy, and above-the-fold impact together.

独立 GitHub 快照 · 自动分类 · 以原作者文档为准

技能说明

GitHub

name: picture-element description: "Use when reviewing image assets, markup, and CDN or build transforms related to Use with an fallback. Check encoded size, rendered size, loading strategy, and above-the-fold impact together." metadata: category: images priority: high difficulty: beginner estimatedTime: "10" source: frontendchecklist.io url: https://frontendchecklist.io/rules/images/picture-element

Use with an fallback

A <picture> without an <img> fallback renders nothing in browsers that don't support <picture> (IE11) or don't support any of the <source> formats. The <img> child is also where alt, width, height, loading, and fetchpriority attributes live—these apply regardless of which source the browser selects.

Quick Reference

  • Every <picture> must end with an <img> element—it is the required fallback and carries alt
  • <source> elements are evaluated top-to-bottom; the first match wins
  • Use type="image/avif" and type="image/webp" on <source> for format selection
  • The <img src> should point to a JPEG or PNG—the universal fallback for all browsers

Check

Scan all elements in this codebase. Verify: 1) Every has an as its last child (required fallback). 2) The has an alt attribute. 3) The has width and height attributes. 4) elements appear before the child. 5) Each has either a srcset attribute or a media attribute. 6) format-selecting elements have a type attribute (type="image/avif", type="image/webp"). Flag any missing an child or with not as the last child.

Fix

For each element with issues: 1) If missing : add as the last child. 2) If is not last: move it to after all elements. 3) If elements lack type attributes for format selection: add type="image/avif" or type="image/webp". 4) Verify the points to a universally supported format (JPEG or PNG) as the ultimate fallback. Show the corrected markup.

Explain

Explain how the element works. Browsers evaluate elements in document order and use the first one whose conditions match (type, media, srcset). The element is the fallback for browsers that don't support (IE11) or don't support the source format. Without an child, is invalid HTML and produces no output. The alt attribute must be on the , not the elements—it applies regardless of which source is selected.

Code Review

Review image assets, markup, and delivery configuration related to Use with an fallback. Flag exact files or components where format choice, sizing, or loading behavior violates the rule, and describe how to confirm the fix in DevTools.


For full implementation details, code examples, and framework-specific guidance, see references/rule.md.

Rule page: https://frontendchecklist.io/rules/images/picture-element

我的收藏