x0x5x1x7x
@x0x5x1x7x

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

レスポンシブデザインで画像の切り替えができない。

レスポンシブデザインで画像を切り替えたいです。

スマホとPCサイズで、画像の表示切り替えをしたいのですが、うまくいきません、、。

640px以下・・・sp.jpg
それ以外・・・pc.jpg

上記の条件で切り替えたいのですが、chromeの検証を見る限り変わっていないようです。

<picture class="section_01">
	<source media="(min-width:640px)" srcset="pc.jpg">
	<img src="sp.jpg">
</picture>
.section_01 {
  display: block;
  width: 100%;
  height: auto;

 @media screen and (min-width:640px) {
  & img{
      width: 100%;
      height: auto;
  }
}
}

HTMLとCSSのコードが正しいかどうか、どなたかご回答いただけないでしょうか。
どうぞよろしくお願い致します。

1

4Answer

Comments

  1. @x0x5x1x7x

    Questioner

    コメントありがとうございます!
    こちら半角で打ち直してみたのですが、変わりませんでした、、( ; ; )

普通に以下の書き方じゃダメなのでしょうか?

<picture>
  <source media="(max-width: 640px)" srcset="sp.jpg">
  <source media="(min-width: 641px)" srcset="pc.jpg">
  <img src="pc.jpg">
</picture>

調べた感じ、
画像切替のみの用途でsrcsetMedia Query
併用するようなパターンは無さそうでしたが…

使用しているディスプレイの種類によって
開発者ツールの設定が必要かもしれないです。

■参考

0Like

Comments

  1. @x0x5x1x7x

    Questioner

    コメントありがとうございます!
    参考サイトもとてもありがたいです( ; ; )

    srcsetとMedia Queryは併用しないとのことですが、cssのMedia Query部分を削除してみても切り替わらずでした、、。

    参考サイトを見ながらもう一度挑戦してみます!ありがとうございます!

既に解決されてたら申し訳ないのですが
min-widthは以上という意味なので
min-width:641pxにすると640pxを境に切り替わってくれます。

質問の意図が違うのでしたらすみません

0Like

Comments

  1. @x0x5x1x7x

    Questioner

    コメントありがとうございます!
    コメントしてくださったように、

    <source media="(min-width:641px)" srcset="pc.jpg">
    <img src="sp.jpg">

    に変更してみたのですが、PC画面表示でもSP画像が表示されてしまっています、、

上記の回答以外であれば、これでどうでしょうか?

<picture class="section_01">
	<img src="pc.jpg" id="pc">
	<img src="sp.jpg" id="sp">
</picture>
@media screen and (min-width:640px) {
  #sp {
      display: none;
  }
}
@media screen and (max-width:640px) {
  #pc {
      display: none;
  }
}
0Like

Comments

  1. @x0x5x1x7x

    Questioner

    コメントありがとうございます!
    切り替わりました( ; ; )感動、、( ; ; )!!!!!!!!!!!!!!!!!!

    この方法だと、SP、PCどちらも画像を読み込んでしまっている状態になるので
    重いデータでは向いていないと、どこかで読んだのですが
    今回は軽いデータなので、こちらで作成を進めていこうと思います!

    pictureのコードを使用しても制作できるようになりたいので、引き続き勉強していきます!
    ありがとうございました(*^^*)

Your answer might help someone💌