HTMLでテーブル列に属性を指定する方法 ― colタグの使い方を解説
テーブルの列に対して共通のスタイルや属性をまとめて設定したい場合には、<col>タグを使用します。<col>タグは、テーブルの各列に適用する属性定義をグループ化できる便利な要素です。
なお、<col>タグはあくまで「列への属性指定」を行うものであり、列そのものを構造的にグループ化する役割は<colgroup>要素が担当します。両者はセットで使われることが多いため、違いを理解しておきましょう。
<col>タグで使える主な属性
| 属性 | 値 | 説明 |
|---|---|---|
| align | right left center justify char | セル内テキストの水平方向の配置を指定します。HTML5では廃止されています。 |
| char | 文字 | テキストを揃える基準となる1文字を指定します(align="char" と併用)。HTML5では廃止されています。 |
| charoff | ピクセル / % | char属性で指定した基準文字からのオフセット位置を、ピクセルまたはパーセンテージで指定します。HTML5では廃止されています。 |
| span | 数値 | <col>要素が適用される連続する列の数を指定します。例えば「span=3」とすると、3列分に同じ設定が適用されます。 |
| valign | bottom middle top baseline | セル内コンテンツの垂直方向の配置を指定します。HTML5では廃止されています。 |
| width | ピクセル / % | 対象となる各列のデフォルト幅を指定します。HTML5では廃止されているため、CSSでの指定が推奨されます。 |
補足: 上記のうち表示に関する属性(align・valign・widthなど)は、HTML5では廃止されました。現在のWeb制作では、これらの代わりにCSSのtext-alignやvertical-align、widthプロパティを使用するのが標準的な方法です。
サンプルコード
以下のコードは、<colgroup>の中に複数の<col>タグを配置し、それぞれ異なる幅を持つ4つの列を定義した例です。実際にブラウザで表示してみましょう。
<!DOCTYPE html> <html> <head> <title>HTML col Tag</title> </head> <body> <p>この例では、幅の異なる3つの列を持つcolgroupを示しています:</p> <table border = "1"> <colgroup span = "4"> <col width = "40"></col> <col width = "70"></col> <col width = "100"></col> <col width = "130"></col> <col width = "160"></col> </colgroup> <tr> <td>One</td> <td>Two</td> <td>Three</td> <td>Four</td> <td>Five</td> </tr> </table> </body> </html>
このように<col>タグを活用すると、個々のセルに同じ属性を繰り返し記述することなく、列単位で効率的にスタイルを管理できます。モダンな開発ではCSSとの組み合わせが基本となりますが、既存コードの保守やレガシーシステムの理解においても知っておくと役立つ知識です。
-
HTMLでテーブルの境界線を作成するにはどうすればよいですか?
HTMLで表(テーブル)の境界線を作成するには、かつては border 属性が使用されていました。しかし、HTML5 の登場によりこの属性は非推奨となりました。現在では、CSS の border プロパティを使って境界線を設定するのが標準的な方法です。table 要素だけでなく、<th> や <td> にも個別に境界線を指定しましょう。 サンプルコード 以下のコードを実行すると、HTML の表に境界線を表示できます。ここでは <style> タグ内で CSS を定義しています。 <!DOCTYPE html> <html> &nbs
-
HTMLでテーブルの列を結合する方法|colspan属性の使い方を解説
HTMLでテーブルの列を結合(マージ)するには、<td>タグにcolspan属性を使用します。この属性を指定することで、隣接するセル同士を横方向にまとめることができます。 例えば、4行4列のテーブルがある場合でも、colspan属性を使えば、2つや3つのセルを簡単に結合できます。 例1:基本となるテーブルを作成する まずは、colspan属性を使う前の状態として、3行3列のシンプルなテーブルをHTMLで作成してみましょう。 <!DOCTYPE html> <html> <head> &nbs