■ tableの基本
エクセルなどの表計算ソフトでマスの事をセルと言いますが、tableも同じでセルと呼びます。
tableの場合 <td>〜</td> が1つのセルです。つまりソースで見た場合、
<td>〜</td> の数がセルの数になります。(<th>〜</th>の場合もあり。)
+ セルが1つの場合
<table border=1>
<tr>
<td>セル1</td>
</tr>
</table>
+ セルが横並びで2つの場合
<table border=1>
<tr>
<td>セル1</td>
<td>セル2</td>
</tr>
</table>
上の分け方でメールひな形が良く作られています。
例はセルが見て分りやすいように、border=1 にして枠を表示しています。
セルの数を横に増やす場合は、<td>セル</td>を増やしていけば良いです。
<table border=1>
<tr>
<td>セル1</td>
<td>セル2</td>
<td>セル3</td>
<td>セル4</td>
</tr>
</table>
+ セルが縦並びで2つの場合
<table border=1>
<tr>
<td>セル1</td>
</tr>
<tr>
<td>セル2</td>
</tr>
</table>
縦に区切る場合と横に区切る場合の違いが分りますよね。縦に区切る場合は
<tr>〜</tr>を増やします。tr は縦と覚ええれば良いですね。
横と縦の区切りははいくらでも増やせます。
3×3のtableを書いてみます。
<table border=1>
<tr>
<td>セル1</td>
<td>セル2</td>
<td>セル3</td>
</tr>
<tr>
<td>セル4</td>
<td>セル5</td>
<td>セル6</td>
</tr>
<tr>
<td>セル7</td>
<td>セル8</td>
<td>セル9</td>
</tr>
</table>
セル1 |
セル2 |
セル3 |
セル4 |
セル5 |
セル6 |
セル7 |
セル8 |
セル9 |
■ 横のセルを結合
<table border=1>
<tr>
<td>セル1</td><td>セル2</td>
</tr>
<tr>
<td>セル3</td><td>セル4</td>
</tr>
</table>
上の縦横2つづつのセルのうち上の2つを結合します。
<table border=1>
<tr>
<td colspan="2">セル1+セル2</td>
</tr>
<tr>
<td>セル3</td><td>セル4</td>
</tr>
</table>
<table border=1>
<tr>
<td>セル1</td><td>セル42</td>
</tr>
<tr>
<td colspan="2">セル3+セル4</td>
</tr>
</table>
これは2つのセルを1つにまとめたもので、2つ分のセルだと colspan="2" で宣言しています。
colspan が横のセルを結合するための属性で、結合した数を値として書きます。
この場合は2つのセル結合したので値が "2" です。
■ 縦のセルを結合
<table border=1>
<tr>
<td rowspan="2">セル1+セル3</td><td>セル2</td>
</tr>
<tr>
<td>セル4</td>
</tr>
</table>
<table border=1>
<tr>
<td>セル1</td><td rowspan="2">セル2+セル4</td>
</tr>
<tr>
<td>セル3</td>
</tr>
</table>
縦方向のセルを結合する場合は rowspan 属性を使います。上の場合は1と3のセルを結合しました。
このように隣りのセルは縦でも横でも結合する事が出来ます。
しかし複雑な結合は間違えやすいです。(笑)
■ 横と縦のセルを結合したテーブル
セルの結合は、下のようなテーブルの何処と何処を結合するかを考えると分かりやすいです。
<table border=1>
<tr>
<td>セル1</td><td>セル2</td>
</tr>
<tr>
<td>セル3</td><td>セル4</td>
</tr>
<tr>
<td>セル5</td><td>セル6</td>
</tr>
</table>
上のテーブルのセル1とセル2を結合して、更にセル3とセル5を結合する場合は、
セル1とセル2を結合するので、セル1 に colspan="2" を入れて <td>セル2</td> は削除。
セル3とセル5を結合するので、セル3 に rowspan="2" を入れて <td>セル5</td> は削除。
結果は下のようになります。
<table border=1>
<tr>
<td colspan="2">セル1+セル2</td>
</tr>
<tr>
<td rowspan="2">セル3+セル5</td><td>セル4</td>
</tr>
<tr>
<td>セル6</td>
</tr>
</table>
colspan 属性と rowspan 属性 を同時に使う事も出来ます。
複雑に区切ったテーブルの例
<table border=1>
<tr>
<td colspan="3">セル1+セル2+セル3</td>
</tr>
<tr>
<td>セル4</td><td colspan="2" rowspan="2">セル5+セル6+セル8+セル9</td>
</tr>
<tr>
<td>セル7</td>
</tr>
<tr>
<td>セル10</td><td>セル11</td><td>セル12</td>
</tr>
</table>
セル1+セル2+セル3 |
セル4 | セル5+セル6 +セル8+セル9 |
セル7 |
セル10 | セル11 | セル12 |
|