<source> は画像、音声および動画等のメディアリソースを指定するHTMLタグです。<picture>、<audio>、<video>要素の子要素として使います。source要素の使い方をご紹介します。
HTML要素のタグ名、属性名および属性値は、大文字と小文字のどちらでもよい。source要素の終了タグは省略できる。
<source></source><source>XML形式で終了タグを省略することもできる。
<source />source要素の開始タグと終了タグの間には何も含めることができない。
以下に示す属性をsource要素に指定できる。
| 値 | 説明 | 
|---|---|
| image/avif | AVIF 形式の画像 | 
| image/gif | GIF 形式の画像 | 
| image/jpeg | JPEG 形式の画像 | 
| image/png | PNG 形式の画像 | 
| image/svg+xml | SVG 形式の画像 | 
| image/webp | WebP 形式の画像 | 
<audio controls>
  <source src="/media/example.mp3">
</audio>ウェブブラウザが複数の画像形式に対応している場合、先に出現する source 要素が優先される。
<picture>
  <!-- AVIFに対応しているブラウザではAVIF画像を表示する -->
  <source srcset="/images/example.avif" type="image/avif">
  <!-- AVIFに対応していないブラウザではWebP画像を表示する -->
  <source srcset="/images/example.webp" type="image/webp">
  <!-- どちらにも対応していないブラウザではJPEG画像を表示する -->
  <img src="/images/example.jpg">
</picture> 
      JavaScriptからは HTMLSourceElement インタフェースを通じてsource要素へアクセスできる。
| プロパティ | 型 | 説明 | 
|---|---|---|
| src | string | src属性 | 
| type | string | type属性 | 
| srcset | string | srcset属性 | 
| sizes | string | sizes属性 | 
| media | string | media属性 | 
| width | number | width属性 | 
| height | number | height属性 | 
Web Hypertext Application Technology Working Group (2022) "Embedded content" HTML Living Standard