前提・実現したいこと
サイト上に、ふわっと切り替わるような複数枚の画像を配置したいと思っています。
pcサイズ用の画像とspサイズ用の画像を用意していて、画面の幅に合わせて片方の表示を消したいと思っているのですが、display:none;を指定しても消えてくれずに困っています。
どなたか、お力添え頂けますと幸いです…。
発生している問題・エラーメッセージ
画面幅549px以上でpcサイズの画像を、それ以下でspサイズの画像を表示したいのですが、両方とも表示されてしまいます。
該当のソースコード
HTML
1 <div class="pc_top_image"> 2 <div class="img-wrap"> 3 <img src="images/peco-top/top_image.png"> 4 <img src="images/peco-top/top_image3.png"> 5 <img src="images/peco-top/top_image2.png"> 6 7 </div> 8 </div> 9 10<!--上記がpcサイズで表示させたい画像です--> 11 12 <div class="sp_top_image"> 13 <div class="img-wrap"> 14 <img src="images/peco-top/sp_top_image.png"> 15 <img src="images/peco-top/sp_top_image2.png"> 16 <img src="images/peco-top/sp_top_image2.png"> 17 </div> 18 </div> 19 20<!--上記がspサイズで表示させたい画像です-->
scss
1 .pc_top_image { 2 @media (max-width: 549px) { 3 display:none; 4 } 5 .img-wrap { 6 margin-bottom:52%; 7 width: 100%; 8 position: relative; 9 10 img { 11 width:100%; 12 position: absolute; 13} 14 } 15 } 16 17 .sp_top_image { 18 vertical-align: top; 19 @media (min-width: 549px) { 20 display:none; 21 } 22 .img-wrap { 23 24 margin-bottom:129%; 25 width: 100%; 26 position: relative; 27 28 img { 29 width:100%; 30 position: absolute; 31} 32 } 33} 34
jQuery
1<script> 2 $('.img-wrap img:nth-child(n+2)').hide(); 3 setInterval(function() { 4 $(".img-wrap img:first-child").fadeOut(4000); 5 $(".img-wrap img:nth-child(2)").fadeIn(4000); 6 $(".img-wrap img:first-child").appendTo(".img-wrap"); 7 }, 5000); 8 </script>
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/02/22 09:09