tableタグは基本的には表組を作るときに使用されるタグですが、ホームページビルダーで作るサイトのように、サイトの骨格としてもよく使われます。
tableの構造は以下に示すような、table,tr,tdの3つのタグがセットとなった構造をとります。
<table>
<tr>
<td></td>
</tr>
</table>
”tr”は行を表し、”td”は列を表します。口で言うよりも図で見たほうがわかりやすいかもしれません。
<table>
<tr>
<td>A</td>
<td>B</td>
</tr>
</table>
| A | B |
<table>
<tr>
<td>A</td>
</tr>
<tr>
<td>B</td>
</tr>
</table>
| A |
| B |
<table>
<tr>
<td>A</td>
<td>B</td>
</tr>
<tr>
<td>C</td>
<td>D</td>
</tr>
</table>
| A | B |
| C | D |
また、1つ1つのセルを結合することもできます。
上下に並ぶセルを結合するのが"rowspan"、左右に並ぶセルを結合するのが"colspan"で、共に"="のあとに数字を入れることで、結合するセルの個数を指定できます。
<table>
<tr>
<td colspan="2">A</td>
</tr>
<tr>
<td>C</td>
<td>D</td>
</tr>
</table>
| A | |
| C | D |
<table>
<tr>
<td rowspan="2">A</td>
<td>B</td>
</tr>
<tr>
<td>D</td>
</tr>
</table>
| A | B |
| D |
table内要素には、border,cellspacing,cellpaddingがあり、いずれも数値(自動的にpx)で指定することができます。
borderはその名のとおり、枠線の幅、cellpaddingはそのテーブルの全てのpaddingを指定できます(ただし、ユニバーサルセレクタでpadding:0とすると適用されず)。cellspacingは以下を参考にしてください。
| cellspacing="10"の場合 |
| cellspacing="20"の場合 |
これらを踏まえて、サンプルにtable骨格を追加します。
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<head>
<title>ホームページ作成講座</title>
<meta name="description" content="ホームページ作成の方法を初心者さんにもわかるように、簡単に解説している講座です。" />
<meta name="keywords" content="ホームページ,作成,講座" />
<meta name="author" content="wakabagari" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" type="text/css" href="style/style.css" media="all" />
</head>
<body>
<table border="0" cellspacing="0" width="550">
<tr>
<td colspan="2">タイトル</td>
</tr>
<tr>
<td>メニュー</td>
<td>コンテンツ</td>
</tr>
<tr>
<td colspan="2">アドレス</td>
</tr>
</table>
</body>
</html>
スタイルシートには、いつでも変わらずまずはこれを記述します。
@charset "utf-8";
* {
margin:0;
padding:0;
}
img {
border:0;
}
ここまでの作成経過はコチラ→サンプル(ホームページ作成講座)