CSSで画像を複数枚、並べて表示したい
その際に、ブラウザの画面のサイズを変えても元の画像の縦横比をそのまま画面サイズに合わせて画像の大きさもそのまま自動的に変わっていく方法が知りたい
PCから見た場合は横並びに、スマートフォンから見た場合は画像を縦並びにしたい
今のところ縦並びにする際には、flex-direction: column;を使う予定です。
自分でいろいろと試してはいるのですがなかなか改善されません
画像を横並びにする場合は特に問題はないのですが、スマホ用に画像を縦並びにしてしまうと縦の画像サイズが変わってくれません
試しにheightをpxではなく100%などと変えてはみるのですがそうすると画像が表示されなくなってしまいます。
発生している問題・エラーメッセージ
ブラウザの画面サイズによって、画像の縦のサイズが自動的に変わらない
該当のソースコード
html
1<div class="image"> 2 <div class="img-1"></div> 3 <div class="img-2"></div> 4 <div class="img-3"></div> 5 <div class="img-4"></div> 6</div>
css
1.image { 2 display: flex 3 flex-direction: column; 4 width: 100%; 5;} 6 7.img-1 { 8 width: 100%; 9 height: 620px; 10 background: url(https://placehold.jp/3d4070/ffffff/200x200.png) no-repeat top left; 11 background-size: 100%; 12} 13.img-2 { 14 width: 100%; 15 height: 620px; 16 background: url(https://placehold.jp/200x200.png ) no-repeat top left; 17 background-size: 100%; 18} 19.img-3 { 20 width: 100%; 21 height: 620px; 22 background: url(https://placehold.jp/3d4070/ffffff/200x200.png ) no-repeat top left; 23 background-size: 100%; 24} 25.img-4 { 26 width: 100%; 27 height: 620px; 28 background: url(https://placehold.jp/200x200.png ) no-repeat top left; 29 background-size: 100%; 30}
試したこと
CSS側でそれぞれの画像サイズをwidthとheightを使ってpx単位で決めてあげれば画像が表示されるが、それ以外だと画像が表示されない。
ただ、px単位で画像サイズを決めると、画面サイズに応じてサイズが変わってくれない。
回答1件
あなたの回答
tips
プレビュー