次の範囲である「料金プラン」セクションでは、<table>タグを使った表が入ります。
下記部分を作成する前に、テーブルの基本構成を学びましょう。

※本レッスンはプロコーダー講座と同じ内容となっております。
でに受講済の方はスキップして、料金プランの作成に進んでください。
テーブルとは
HTMLコーディングで「テーブル」と言われた場合、tableタグを使用して作った“表組”のことを指します。
エクセルの表をWebページで表現するようなイメージです。
一覧表や料金表、会社概要など、情報を整理して分かりやすく見せた場合にテーブルがよく使われます。
SKILLHUBの料金表もテーブルを使っています。

エクセルで表に色を付けたり、セルを結合させることが出来るように、HTMLのtableもCSSと組み合わせることで色々な表現が可能です。
下記サイトではセルの結合状態になっていますね。
テーブルタグの基本構成
テーブルを作るために最低限必要なタグは<table> <tr> <td> の3つです。
<table>
<tr>
<td>山田さん</td>
<td>女性</td>
<td>東京都</td>
</tr>
<tr>
<td>伊藤さん</td>
<td>女性</td>
<td>千葉県</td>
</tr>
<tr>
<td>高橋さん</td>
<td>男性</td>
<td>東京都</td>
</tr>
</table>
これだけ書いて、ブラウザで表示すると下図のように表示されます。

タグと見合わせると、構造がなんとなくわかってきたのではないでしょうか。
- table : このタグ内をテーブル(表)として扱う
- tr : 行の始まりから終わりまでを示す
- td : tdタグで囲った部分をセルとして扱う

また<th>というタグもよく使用されます。
thは見出しの役割があるセルであることを意味します。
<table>
<tr>
<th>お名前</th>
<th>性別</th>
<th>お住まい</th>
</tr>
<tr>
<td>山田さん</td>
<td>女性</td>
<td>東京都</td>
</tr>
<tr>
<td>山田さん</td>
<td>女性</td>
<td>東京都</td>
</tr>
<tr>
<td>伊藤さん</td>
<td>女性</td>
<td>千葉県</td>
</tr>
<tr>
<td>高橋さん</td>
<td>男性</td>
<td>東京都</td>
</tr>
</table>

見出しセルthは縦でも横でも使えます。
<table>
<tr>
<th>お名前</th>
<td>山田さん</td>
<td>伊藤さん</td>
<td>高橋さん</td>
</tr>
<tr>
<th>性別</th>
<td>女性</td>
<td>女性</td>
<td>男性</td>
</tr>
<tr>
<th>お住まい</th>
<td>東京都</td>
<td>千葉県</td>
<td>東京都</td>
</tr>
</table>

テーブルのグレードアップ
テーブルは上記の基本タグ以外にも、タグや属性が用意されています。
知っておきたいタグと属性を紹介します。
thead,tbody,tfoot
テーブルの内部は<thead> <tbody> <tfoot>のタグを使って、行の区切りを明確化することもできます。
大抵の場合、<thead>と<tfoot>は1行ずつです。
- thead:テーブルのヘッダーセル。主に見出しを入れる
- tbody:テーブルで見せたい情報を入れる
- tfoot:テーブルのフッターセル。bodyの補足情報などを入れる
<thead> <tbody> <tfoot>は省略しても問題有りません。
<thead>と<tbody> を使うなど、必要なタグのみ使っても良いです。
<table>
<thead>
<tr>
<th>お名前</th>
<th>性別</th>
<th>お住まい</th>
</tr>
</thead>
<tbody>
<tr>
<td>山田さん</td>
<td>女性</td>
<td>東京都</td>
</tr>
<tr>
<td>山田さん</td>
<td>女性</td>
<td>東京都</td>
</tr>
<tr>
<td>伊藤さん</td>
<td>女性</td>
<td>千葉県</td>
</tr>
<tr>
<td>高橋さん</td>
<td>男性</td>
<td>東京都</td>
</tr>
</tbody>
</table>

見た目は変わりませんが、HTMLのソースコード上では分かりやすくなっています。
セルの結合を行う
テーブルを作っていると、セルをまとめたい部分を出てきます。
そんな時には colspan属性、 rowspan属性を使用します。
- colspan:セルを横(右)に伸ばす
- rowspan:セルを縦(下)に伸ばす
CSSで装飾する
テーブルのスタイルシートは、要素に対してidやclassを付ける、要素をセレクタにするなどの方法で設定できます。divなどと同じですね。
<style>
.sample1{
width: 600px;
background-color: #ccc;
}
.sample1 thead{
background-color: #000;
color: #FFF;
}
.pink{
background-color: pink;
}
</style>
<table class="sample1">
<thead>
<tr>
<th class="pink">お名前</th>
<th>性別</th>
<th>お住まい</th>
</tr>
</thead>
<tbody>
<tr>
<td>山田さん</td>
<td>女性</td>
<td>東京都</td>
</tr>
<tr>
<td>山田さん</td>
<td>女性</td>
<td>東京都</td>
</tr>
<tr>
<td>伊藤さん</td>
<td>女性</td>
<td>千葉県</td>
</tr>
<tr>
<td>高橋さん</td>
<td>男性</td>
<td>東京都</td>
</tr>
</tbody>
</table>

まとめ
テーブルは<table> <tr> <td>の3つのタグで作成することができます。
それに加えて、見出しやグルーピングの設定、セルの結合、CSSを設定することで、様々なデザインの表をWEBページ上で表示できるようになります。