HTMLで複数の画像を均等に横並びする方法を現役エンジニアが解説【初心者向け】

初心者向けにHTMLで複数の画像を均等に横並びする方法について解説しています。ここではdisplay:flex;とflex-wrap:wrap;を使う方法、marginで均等に余白を維持する方法をサンプルコードで説明します。画面上での見え方を確認しましょう。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事が4,000以上あります。現役エンジニアの方はこちらをご覧ください。

HTMLで複数の画像を均等に横並びする方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

そもそも、HTMLの記述方法がわからない場合は、 HTMLの書き方について解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプ、Webデザイン講座のHTMLカリキュラムをもとに執筆しています。

 

田島悠介

今回は、HTMLに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

複数の画像を均等に横並びする方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

目次

 

画像を横並びにする方法

横並びにさせたい画像に対して、

  • 全てdisplayプロパティにinline-blockを設定する方法
  • フロートを使用する方法
  • 画像集の親要素のdispalyプロパティにflexを指定する方法

の3通りがあります。

 

[PR] HTML/CSSで挫折しない学習方法を動画で公開中

画像間の隙間を均等に保つ方法

marginプロパティを使用することで隙間を作ることができますが、均等の隙間になる値を計算してから定義します。

 

ブラウザの横幅を変えても均等に保つ方法

ブラウザの横幅を収縮させても、隙間などの値を均等に保つために、相対的な値になる単位(%)を使用します。

 

複数の画像を均等に横並びしてみよう

以下、例としてdisplay:flex;とflex-wrap:wrap;を使用する場合及びmarginにて均等に隙間(余白)を維持する設定です。

HTML

<div class="flex-box">
  <div class="thumnail-left-box">
  <img src="https://placehold.jp/150x150.png">
  </div>
  <ul class="thumnail-right-box flex-box">
  <li><img src="https://placehold.jp/50x50.png"></li>
  <li><img src="https://placehold.jp/50x50.png"></li>
  <li><img src="https://placehold.jp/50x50.png"></li>
  <li><img src="https://placehold.jp/50x50.png"></li>
  <li><img src="https://placehold.jp/50x50.png"></li>
  <li><img src="https://placehold.jp/50x50.png"></li>
  <li><img src="https://placehold.jp/50x50.png"></li>
  <li><img src="https://placehold.jp/50x50.png"></li>
  <li><img src="https://placehold.jp/50x50.png"></li>
  <li><img src="https://placehold.jp/50x50.png"></li>
  </ul>
</div>

 

CSS

.flex-box {
  display: flex;
  flex-wrap: wrap;
}

.flex-box img {
  vertical-align: top;
}

.thumnail-left-box {
  width: 70%;
  margin: 0;
  padding: 0 0 2.5%;
}

.thumnail-left-box img {
  width: 100%;
}

.thumnail-right-box {
  width: 30%;
  margin: 0;
  padding: 0;
  list-style: none;
}

.thumnail-right-box li {
  display: flex;
  flex-wrap: wrap;
  width: 40%;
  margin: 0 0 0 auto;
}

.thumnail-right-box li img {
  width: 100%;
  margin: 0 0 auto;
}

表示結果

See the Pen
2020-04-22-sample08
by YOHEI INAI (@yohei_inai)
on CodePen.

 

監修してくれたメンター

井内洋平

TechAcademyの現役メンター。

元Web Developerで、趣味は貯金、節税対策、投資信託、株式投資、FXなど多岐にわたる。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

TechAcademyでは初心者でも、最短4週間でオリジナルWebサイトを公開できる、オンラインブートキャンプを開催しています。

また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。