あくまで自分用の覚え書きなので文章とか適当です...

画像をレスポンシブ対応させるために出し分けする例

MEMO: 画像にスタイルを適用する場合は mainvisual__picture img でOK

<figure class="mainvisual__picture">
	<picture>
		<source media="(max-width:767px)" srcset="./family-sp.png 1x, ./family-sp@2x.png 2x">
		<source media="(min-width:768px)" srcset="./family.png">
		<img src="./family.png" width="1400" height="890" alt="写真:家族の画像">
	</picture>
</figure>

2. picture 要素 + webp による画像の出し分け

Chromeではディベロッパーツールで小さい画面から大きくしていく/リロードすると画像の切り替わりを確認できる。

WebPフォーマットに対応したブラウザでは source、非対応では img の画像が表示される

<picture>
	<source
	type="image/webp"
	srcset="img400.webp 400w,
			img800.webp 800w,
			img.webp 1600w"
	sizes="(max-width: 1600px) 100vw, 1600px"
	>
	<img src="img.jpg"
	srcset="img400.jpg 400w,
			img800.jpg 800w,
			img.jpg 1600w"
	sizes="(max-width: 1600px) 100vw, 1600px"
	alt="">
</picture>

3. srcset sizes 属性による画像の出し分け

Chromeではディベロッパーツールで小さい画面から大きくしていく/リロードすると画像の切り替わりを確認できる。

<figure class="mainvisual__picture">
	<picture>
		<source media="(max-width:767px)" srcset="./family-sp.png 1x, ./family-sp@2x.png 2x">
		<source media="(min-width:768px)" srcset="./family.png">
		<img src="./family.png" width="1400" height="890" alt="写真:家族の画像">
	</picture>
</figure>
スポンサーリンク