【HTML / CSS基礎】pictureタグでレスポンシブ対応

コラム

COLUMN

【HTML / CSS基礎】pictureタグでレスポンシブ対応

HTML/CSS 基礎

みなさん「pictureタグ」はご存知ですか?

pictureタグはCSSを使わずにHTMLだけで画像をレスポンシブできるタグです!

pictureタグを使えば、PC版とスマホ版で「display: none;」や「display: block;」で画像を切り替える必要がなくなります。

1つ上のレベルの技術ですが、この機会に習得してしまいましょう。

pictureタグの使い方

See the Pen Untitled by ohsakoena (@ohsako_techis) on CodePen.

pictureタグは、sourceタグとimgタグを囲むようにして使います。

画像を設定するのはsourceタグとimgタグになります。

sourceタグの属性に条件を指定することで、「〇〇px以上のときはabc.pngを表示する」のようにレスポンシブ対応が可能です。

sourceタグを複数書いて様々な画面サイズに対応する画像を表示することもできます。

実例

HTML pictureレスポンシブ

media属性に (max-width: 800px) とすることで、800px以下のときにsrcset属性で指定した画像が表示されます。

media属性の条件に当てはまらない場合、つまり801px以上の時はimgタグのsrc属性で指定した画像が表示されます。

See the Pen Untitled by ohsakoena (@ohsako_techis) on CodePen.

pictureタグを使うと、HTMLだけで画像を切り替えられるようになります。

画面サイズ以外にも、デバイスの解像度で切り替える方法もあります。

気になる方は是非調べてみてください。 

<参考リンク> pictureタグ 画像要素 MDN Web Docs