HTMLでテーブルのセルを結合する方法を現役エンジニアが解説【初心者向け】

初心者向けにHTMLでテーブルのセルを結合する方法について解説しています。テーブル内のセルを結合するときにはrowspan属性、colspan属性を使用します。縦の結合と横の結合それぞれの書き方、結合したときの表示を確認しましょう。

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

HTMLでテーブルのセルを結合する方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

 

HTMLの記述方法がわからない場合は、 HTMLの書き方 の記事を読むとさらに理解を深めることができるでしょう。

 

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

 

田島悠介

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

大石ゆかり

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

田島悠介

テーブルのセルを結合する方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

結合とは

セルを縦または横につなげることを結合と呼びます。

HTMLのテーブルは複数のセル(<td>要素)で構成されているため、結合は難しい操作ではありません

 

 

縦と横方向への結合

セルを縦方向に結合するために rowspan 属性を指定します。

結合は行の下方向に向かって行われるため、結合されたセルの分を除いて表を構成する必要があることに注意が必要です。

<td rowspan="2">

横方向に結合するには colspan 属性を指定します。

結合は列の右方向に向かって行われるため、この場合も右方向では結合されたセルの分を除いて表を構成しなければなりません。

<td colspan="2">

 

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

テーブルを作ってセルを結合してみよう

今回のサンプルプログラムでは、テーブルを作ってセルの結合について確認しましょう。

結合前のコードは以下のものを使用します。

<table>
  <thead>
  <tr>
    <th>列1</th>
    <th>列2</th>
    <th>列3</th>
  </tr>
  </thead>
  <tbody>
  <tr>
    <td>1行1列</td>
    <td>1行2列</td>
    <td>1行3列</td>
  </tr>
  <tr>
    <td>2行1列</td>
    <td>2行2列</td>
    <td>2行3列</td>
  </tr>
  <tr>
    <td>3行1列</td>
    <td>3行2列</td>
    <td>3行3列</td>
  </tr>
  </tbody>
</table>

実行結果は以下のようになります。

まずは、 colspan を使って列方向の結合を行ってみましょう。

<table>
  <thead>
  <tr>
    <th>列1</th>
    <th>列2</th>
    <th>列3</th>
  </tr>
  </thead>
  <tbody>
  <tr>
    <td>1行1列</td>
    <td>1行2列</td>
    <td>1行3列</td>
  </tr>
  <tr>
    <td colspan="2">2行1列</td>
    <td>2行3列</td>
  </tr>
  <tr>
    <td>3行1列</td>
    <td>3行2列</td>
    <td>3行3列</td>
  </tr>
  </tbody>
</table>

実行結果は以下のようになります。

 

次は rowspan を使い行方向の結合を行ってみましょう。

<table>
  <thead>
  <tr>
    <th>列1</th>
    <th>列2</th>
    <th>列3</th>
  </tr>
  </thead>
  <tbody>
  <tr>
    <td>1行1列</td>
    <td rowspan="3">1行2列</td>
    <td>1行3列</td>
  </tr>
  <tr>
    <td>2行1列</td>
    <td>2行3列</td>
  </tr>
  <tr>
    <td>3行1列</td>
    <td>3行3列</td>
  </tr>
  </tbody>
</table>

実行結果は以下のようになります。

そして、colspanとrowspanは組み合わせることも可能です。

<table>
  <thead>
  <tr>
    <th>列1</th>
    <th>列2</th>
    <th>列3</th>
  </tr>
  </thead>
  <tbody>
  <tr>
    <td>1行1列</td>
    <td colspan="2" rowspan="2">1行2列</td>
  </tr>
  <tr>
    <td>2行1列</td>
  </tr>
  <tr>
    <td>3行1列</td>
    <td>3行2列</td>
    <td>3行3列</td>
  </tr>
  </tbody>
</table>

実行結果は以下のようになります。


colspanとrowspanは、HTMLでテーブルのセルを結合する方法の中でも非常に使いやすいものです。使い分けながに有効に使用していきましょう。

執筆してくれたメンター

太田和樹(おおたかずき)

ITベンチャー企業のPM兼エンジニア

普段は主に、Web系アプリケーション開発のプロジェクトマネージャーとプログラミング講師を行っている。

守備範囲はフロントエンド、モバイル、サーバサイド、データサイエンティストと幅広い。

その幅広い知見を生かして、複数の領域を組み合わせた新しい提案をするのが得意。

開発実績:画像認識技術を活用した駐車場混雑状況把握(実証実験)、音声認識を活用したヘルプデスク支援システム、Pepperを遠隔操作するアプリの開発、大規模基幹系システムの開発・導入マネジメント。

地方在住。

仕事のほとんどをリモートオフィスで行う。

通勤で消耗する代わりに趣味のDIYや家庭菜園、家族との時間を楽しんでいる。

 

大石ゆかり

HTMLでテーブルのセルを結合する方法、よくわかりました!

田島悠介

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

大石ゆかり

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

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

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