1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

レスポンシブサイトで画像の切り替えに便利なpicture要素

Posted at

レスポンシブサイト開発で必ず対応するであろうPC,Tablet,Smartphoneでの画像・図の切り替え。
皆さんはどのような方法で対応しているでしょうか。

<img class="display-pc" src="hoge_pc.png" alt="ほげ">
<img class="display-sp" src="hoge_sp.png" alt="ほげ">

上記のようにclassを付与してCSSのメディアクエリによって出し分ける方法が一般的でしょうか?

上記の方法以外にも画像をメディアによって出し分けられるpicture要素を紹介します。

picture要素

videoaudioと同じ埋め込みコンテンツの要素で、書き方も同じです。

<picture>
  <source srcset="hoge_pc.png" media="(min-width: 980px)">
  <source srcset="hoge_tb.png" media="(min-width: 375px)">
  <img src="hoge_sp.png" alt="ほげ">
</picture>

source要素のsrcset属性に画像を指定し、media属性にメディアクエリと同じようにメディア条件を指定します。

ユーザーエージェントがメディア条件を判定し、falseと判定された場合に次のsourceを判定することになります。

pictureを使えばマークアップ的にも見やすく、display: noneblockを切り替えるclassを付与する必要もなくなります。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?