【HTML5リファレンス】picture要素
概要
picture要素はHTML内にレスポンシブ画像を表示させるための要素です。
picture要素内にsource要素とimg要素を配置して画像を表示します。
汎用属性
id、class、lang、title、style、dir、tabindex、accesskey、contenteditable、spellcheck、draggable、contextmenu、hiddenの各属性を指定することができます。(汎用属性について)
カテゴリー
エンベディッド・コンテンツ、フレージング・コンテンツ、フロー・コンテンツ (カテゴリーについて)
要素の配置
エンベディッド・コンテンツが配置できる場所
要素の内容
source要素を0個以上配置して後にimg要素を配置
スクリプトサポート(script要素・template要素)
サイズの異なる画像を用意しておくことで、ユーザー環境に合わせた画像を表示することができます。
source要素のsrcsetは必須属性で、次の様に記述します。
<source srcset="サンプル画像.png">
srcsetには画像のURLの他、画像の横幅を指定することもできます。その場合、任意属性のsize属性は必須になります。
<source srcset="サンプル画像.png 480w" sizes="50vw">
画像の横幅の代わりに比率を指定することもできます。その場合の値は「x」です。
属性名 | 解説 |
---|---|
type | 画像のMIMEタイプ |
type="image/png" | |
media | 対象メディア |
media="screen and (min-width: 480px)" | |
sizes | ブレークポイント・画像の横幅 |
width="100vw" メディアクエリーや画像サイズ(横幅)、割合で指定する場合は「vw」 |
サンプル
HTML
<picture>
<source srcset="s.png 900w" sizes="50vw">
<img src="m.png" alt="サンプル画像">
</picture>