HTMLでテーブルタグのセルを上下中央寄せをする方法

HTMLでテーブルタグのセルを上下中央寄せをする方法

HTMLでテーブルのセルを上下中央寄せする方法について、HTMLとCSSを使用して説明します。

HTMLのテーブルにおいて、セル(td や th)を上下中央に寄せるためには、CSSの vertical-align プロパティを使用します。
ここでは、HTMLとCSSを別々のファイルに分けて、test- プレフィックスを使って説明します。

HTMLファイル

<!DOCTYPE html>
<html lang="ja">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>テーブルセルの中央寄せ</title>
  <link rel="stylesheet" href="styles.css">
</head>
<body>
  <table class="test-table">
    <thead>
      <tr>
        <th class="test-cell">ヘッダー1</th>
        <th class="test-cell">ヘッダー2</th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td class="test-cell">セル1</td>
        <td class="test-cell">セル2</td>
      </tr>
      <tr>
        <td class="test-cell">セル3</td>
        <td class="test-cell">セル4</td>
      </tr>
    </tbody>
  </table>
</body>
</html>

CSSファイル

/* styles.css */

.test-table {
  width: 100%;
  border-collapse: collapse;
}

.test-cell {
  border: 1px solid #ddd;
  padding: 10px;
  text-align: center; /* 水平中央寄せ */
  vertical-align: middle; /* 垂直中央寄せ */
}
説明
  • vertical-align: middle; プロパティは、セル内のコンテンツを垂直方向に中央寄せします。

これにより、セル内のテキストや他の要素がセルの上下中央に配置されます。

  • text-align: center; プロパティは、セル内のコンテンツを水平方向に中央寄せします。

これにより、セル内のテキストが水平方向に中央に配置されます。

  • border-collapse: collapse; は、テーブルのボーダーを重ねて表示し、セル間の隙間を無くします。

この方法を用いることで、HTMLのテーブルセルを上下に中央寄せすることができます。
CSSを使用することで、テーブルのデザインを簡単にカスタマイズすることができます。