form要素[HTML5]

<form>…… 入力・送信フォームを作る

<form>タグは、入力・送信フォームを作る際に使用します。<form>~</form>の間に、<input>・<select>・<textarea>等のタグで、一行テキストボックス・サブミットボタン・ラジオボタン・チェックボックス・セレクトボックス・テキストボックス等のフォーム部品を配置します。

フォームに入力されたデータは、送信ボタンを押すことでウェブサーバーへ送信されます。その際の送信先URLはaction属性で、データの送信方法はmethod属性で、送信するデータの形式はenctype属性でそれぞれ指定します。ウェブサーバーへ送信されたデータのプログラム処理は、HTMLやCSSではなくPHPやCGIなどのサーバーサイド・スクリプトで行います。

■action属性は送信先URLを指定する

action属性は、送信先URLを指定する際に使用します。
[html]
<form action="mail.php"> ~ </form>
[/html]

尚、<input>や<button>で作成されるサブミットボタンにformaction属性が指定されている場合には、formaction属性の値が優先されます。

■method属性はデータの送信方法を指定する

method属性は、データの送信方法(HTTPメソッド)を指定する際に指定します。method属性の値として指定できるのは以下の2種類です。

  • get …… 送信内容がURLとして渡される(初期値)
  • post …… 本文(本体)として送信される

初期値はmethod=”get”です。method=”get”を指定すると送信内容がURLとして渡されます。フォーム入力された内容は、action属性で指定したURLの後ろにクエスチョンマーク( ? )を付けて、それ以降続くにクエリとして送信先ページに渡されます。そのため、入力内容はURLにそのまま表示されます。一般的なブラウザではURLの長さに制限があるため、長すぎるデータは途中で切れてしまうので注意が必要です。短めのキーワードや番号などを送信するのに適した送信方法であり、長い文章などを送信するのには向いていません。”get”というのは「クエリ付きURLの情報を“取得する”」というほどの意味です。

method=”post”を指定するとURLの後ろに付くクエリとしてではなく、送信内容自体が本文(本体)として送信されます。入力内容がURLに表示されることはなく、かなり長い文章も送信することができます。”post”というのは「フォームの内容を送信先ページに“送る”」というほどの意味です。

[html]
<form action="mail.php" method="post"> ~ </form>
[/html]

尚、<input>や<button>で作成されるサブミットボタンにformmethod属性が指定されている場合には、formmethod属性の値が優先されます。

■enctype属性は送信データの形式を指定する

enctype属性は、送信するデータの形式を指定する際に指定します。enctype属性の値として指定できるのは以下の3種類です。どのような形式のデータを送信するかによって、値を使い分けます。

  • application/x-www-form-urlencoded …… 複数の「フィールド名=入力内容」を&でつないだ形式のデータ(初期値)
  • multipart/form-data …… ファイルを含むデータ
  • text/plain …… プレーンテキストのみ

初期値はenctype=”application/x-www-form-urlencoded”です。これは複数の「フィールド名=入力内容」を&でつないだ形式のデータで、送信されるデータはURLエンコードされます。送信するデータの中にファイルが含まれる場合、例えば、画像のアップロードなどの場合にはenctype=”multipart/form-data”を指定します。
[html]
<form action="mail.php" method="post" enctype="application/x-www-form-urlencoded"> ~ </form>
[/html]

■accept-charset属性は送信データの文字エンコーディングを指定する

accept-charset属性は、送信されるデータの文字エンコーディングを指定する際に使用します。多くの場合、文字エンコーディングを指定しなくてもサーバー側で自動判別されるようですが、文字化けが起きる場合にはaccept-charset属性を指定することで回避できるかもしれません。

日本語の文字エンコーディングの値としては、”UTF-8″・”Shift_JIS”・”EUC-JP”などが挙げられます。大文字と小文字の違いは区別されません。

accept-charset属性の値には、複数の文字エンコーディングの候補を半角スペースで区切って指定することもできます。この場合、指定した順にサポートされている文字エンコーディングが使用されることになっています。
[html]
<form action="mail.php" method="post" accept-charset="UTF-8"> ~ </form>
[/html]

■name属性はフォームに名前を付ける

name属性は、フォームの名前を指定する際に使用します。name属性の値に空文字を指定することはできません。また、他のフォーム名と重複しないようにしなくてはなりません。
[html]
<form action="mail.php" method="post" name="sample"> ~ </form>
[/html]

■autocomplete属性は自動補完のオンオフを指定する

autocomplete属性は、オートコンプリートのオン(on)/オフ(off)、つまり、入力欄の自動補完を有効にするかどうかを指定する際に使用します。初期値はautocomplete=”on”です。オートコンプリートを無効にする場合にはautocomplete=”off”を指定します。
[html]
<form action="mail.php" method="post" autocomplete="off"> ~ </form>
[/html]

■novalidate属性はフォームのバリデーション機能を無効にする

novalidate属性は、入力されたデータのバリデーション(妥当性チェック)をしないようにする際に使用します。HTML5では<input type=”email”>や、<input type=”url”>などの属性値を指定することができますが、これらの属性値に対応したブラウザでは、EメールやURLとして妥当ではない内容が入力された場合にはバリデーション機能が働いてデータが送信されません。novalidate属性を指定すると、このバリデーション機能が無効になります。
[html]
<form action="mail.php" method="post" novalidate="novalidate"> ~ </form>
[/html]

■HTML4.01からHTML5へのバージョンアップによる変更点

form要素は、HTML5ではaccept属性が廃止され、autocomplete属性・novalidate属性が追加されています。

■使用できる属性

accept-charset属性
送信するデータの文字エンコーディングを指定(UTF-8・Shift_JIS・EUC-JPなど)
action属性
送信先URLを指定
autocomplete属性
オートコンプリートのオン/オフを指定(on・off)
enctype属性
送信するデータの形式を指定(application/x-www-form-urlencoded・multipart/form-data・text/plain)
method属性(初期値はget)
送信方法(HTTPメソッド)を指定(get・post)
name属性
フォームの名前を指定
novalidate属性
入力されたデータの妥当性を確認しない(novalidate)
target属性
フォーム送信するターゲット先を指定(_blank・_self・_parent・_top・任意のターゲット名)

■HTML5での使用例

[html]
<form action="mail.php" method="post">
<p><label>名前:<input type="text" name="name" size="40"></label></p>
<p><label>血液型:
<select name="blood">
<option value="A">A型</option>
<option value="B">B型</option>
<option value="O">O型</option>
<option value="AB">AB型</option>
</select>
</label></p>
<fieldset>
<legend>性別</legend>
<p><label><input type="radio" name="sex" value="male">男</label></p>
<p><label><input type="radio" name="sex" value="female">女</label></p>
</fieldset>
<fieldset>
<legend>趣味</legend>
<p><label><input type="checkbox" name="hobby" value="sports">スポーツ</label></p>
<p><label><input type="checkbox" name="hobby" value="reading">読書</label></p>
<p><label><input type="checkbox" name="hobby" value="music">音楽</label></p>
<p><label><input type="checkbox" name="hobby" value="travel">旅行</label></p>
</fieldset>
<p><label>コメント:<br><textarea name="comments" rows="2" cols="40"></textarea></label></p>
<p><input type="submit" value="送信"><input type="reset" value="リセット"></p>
</form>
[/html]

参考:http://www.htmq.com/html5/form.shtml

カテゴリー: HTML5, HTMLの基礎知識, ナレッジノート |

th要素[HTML5]

<th>…… テーブル(表)の見出しセルを作成する

<th>タグは、テーブル(表)の見出しセル(table header cell)を作成する際に使用します。テーブル(表)の基本的な構造は、<table>~</table>の中に<tr>~</tr>で表の横一行を定義して、さらにその中に<th>~</th>や<td>~</td>でセルを定義します。

データセル(table data cell)を作成する場合には、<td>~</td>を使用します。

■HTML4.01からHTML5へのバージョンアップによる変更点

th要素は、HTML5ではabbr属性・align属性・axis属性・char属性・charoff属性・height属性・nowrap属性・valign属性・width属性が廃止されています。

セルの幅・高さを指定するにはCSSのwidthプロパティやheightプロパティを、セル内の揃え位置を指定するにはCSSのtext-alignプロパティやvertical-alignプロパティを、セル内での改行を禁止するにはCSSのwhite-spaceプロパティを、それぞれ使用してください。

■使用できる属性

colspan属性
セルが横方向にまたがる縦列の数を指定
rowspan属性
セルが縦方向にまたがる横行の数を指定
headers属性
セルがどの見出しセルと対応しているかをth要素のid属性の値で指定
scope属性
見出しセルが行・列のどの範囲に対応しているかをキーワード(row・col・rowgroup・colgroup)で指定。
scope=”row”を指定すると、その見出しセルは同じ横行の後続のいくつかのセルに適用されることを表します。
scope=”col”を指定すると、その見出しセルは同じ縦列の後続のいくつかのセルに適用されることを表します。
scope=”rowgroup”を指定すると、その見出しセルは同じ横行の後続のすべてのセルに適用されることを表します。
scope=”colgroup”を指定すると、その見出しセルは同じ縦行の後続のすべてのセルに適用されることを表します。

■HTML5での使用例

[html]
<table>
<tr><th>順位</th><th>名前</th><th>人気度</th><th>備考</th></tr>
<tr><th>1位</th><td>トロ</td><td>☆☆☆☆☆</td><td>やはり何といってもトロ!</td></tr>
<tr><th>2位</th><td>サーモン</td><td>☆☆☆☆</td><td>ほど良い脂の乗りで女性に人気。</td></tr>
<tr><th>3位</th><td>うに</td><td>☆☆☆</td><td>軍艦もので唯一ランクイン。</td></tr>
<tr><th>4位</th><td>えび</td><td>☆☆☆</td><td>プリプリした歯ごたえが魅力。</td></tr>
<tr><th>5位</th><td>イカ</td><td>☆☆</td><td>やはり外せない甘みのあるイカ。</td></tr>
<tr><td colspan="4">おすし情報局</td></tr>
</table>

<table>
<tr><th id="t1">順位</th><th id="t2">名前</th><th id="t3">人気度</th><th id="t4">備考</th></tr>
<tr><th headers="t1">1位</th><td headers="t2">トロ</td><td headers="t3">☆☆☆☆☆</td><td headers="t4">やはり何といってもトロ!</td></tr>
<tr><th headers="t1">2位</th><td headers="t2">サーモン</td><td headers="t3">☆☆☆☆</td><td headers="t4">ほど良い脂の乗りで女性に人気。</td></tr>
<tr><th headers="t1">3位</th><td headers="t2">うに</td><td headers="t3">☆☆☆</td><td headers="t4">軍艦もので唯一ランクイン。</td></tr>
<tr><th headers="t1">4位</th><td headers="t2">えび</td><td headers="t3">☆☆☆</td><td headers="t4">プリプリした歯ごたえが魅力。</td></tr>
<tr><th headers="t1">5位</th><td headers="t2">イカ</td><td headers="t3">☆☆</td><td headers="t4">やはり外せない甘みのあるイカ。</td></tr>
<tr><td colspan="4">おすし情報局</td></tr>
</table>

<table>
<tr><th scope="col">順位</th><th scope="col">名前</th><th scope="col">人気度</th><th scope="col">備考</th></tr>
<tr><th scope="row">1位</th><td>トロ</td><td>☆☆☆☆☆</td><td>やはり何といってもトロ!</td></tr>
<tr><th scope="row">2位</th><td>サーモン</td><td>☆☆☆☆</td><td>ほど良い脂の乗りで女性に人気。</td></tr>
<tr><th scope="row">3位</th><td>うに</td><td>☆☆☆</td><td>軍艦もので唯一ランクイン。</td></tr>
<tr><th scope="row">4位</th><td>えび</td><td>☆☆☆</td><td>プリプリした歯ごたえが魅力。</td></tr>
<tr><th scope="row">5位</th><td>イカ</td><td>☆☆</td><td>やはり外せない甘みのあるイカ。</td></tr>
<tr><td colspan="4">おすし情報局</td></tr>
</table>
[/html]

参考:http://www.htmq.com/html5/th.shtml

カテゴリー: HTML5, HTMLの基礎知識, ナレッジノート |

td要素[HTML5]

<td>…… テーブル(表)のデータセルを作成する

<td>タグは、テーブル(表)のデータセル(table data cell)を作成する際に使用します。

テーブル(表)の基本的な構造は、<table>~</table>の中に<tr>~</tr>で表の横一行を定義して、さらにその中に<th>~</th>や<td>~</td>でセルを定義します

見出しセル(table header cell)を作成する場合には、<th>~</th>を使用します。

■HTML4.01からHTML5へのバージョンアップによる変更点

td要素は、HTML5ではabbr属性・align属性・axis属性・char属性・charoff属性・height属性・nowrap属性・scope属性・valign属性・width属性が廃止されています。

セルの幅・高さを指定するにはCSSのwidthプロパティやheightプロパティを、セル内の揃え位置を指定するにはCSSのtext-alignプロパティやvertical-alignプロパティを、セル内での改行を禁止するにはCSSのwhite-spaceプロパティを、それぞれ使用してください。

■使用できる属性

colspan属性
セルが横方向にまたがる縦列の数を指定
rowspan属性
セルが縦方向にまたがる横行の数を指定
headers属性
セルがどの見出しセルと対応しているかをth要素のid属性の値で指定

■HTML5での使用例

[html]
<table>
<tr><th>順位</th><th>名前</th><th>人気度</th><th>備考</th></tr>
<tr><th>1位</th><td>トロ</td><td>☆☆☆☆☆</td><td>やはり何といってもトロ!</td></tr>
<tr><th>2位</th><td>サーモン</td><td>☆☆☆☆</td><td>ほど良い脂の乗りで女性に人気。</td></tr>
<tr><th>3位</th><td>うに</td><td>☆☆☆</td><td>軍艦もので唯一ランクイン。</td></tr>
<tr><th>4位</th><td>えび</td><td>☆☆☆</td><td>プリプリした歯ごたえが魅力。</td></tr>
<tr><th>5位</th><td>イカ</td><td>☆☆</td><td>やはり外せない甘みのあるイカ。</td></tr>
<tr><td colspan="4">おすし情報局</td></tr>
</table>
[/html]

参考:http://www.htmq.com/html5/td.shtml

カテゴリー: HTML5, HTMLの基礎知識, ナレッジノート |

tr要素[HTML5]

<tr>…… テーブル(表)の横一行を定義する

<tr>タグはtable rowの略で、テーブル(表)の横一行を定義する際に使用します。

テーブル(表)の基本的な構造は、<table>~</table>の中に<tr>~</tr>で表の横一行を定義して、さらにその中に<th>~</th>や<td>~</td>でセルを定義します。

■HTML4.01からHTML5へのバージョンアップによる変更点

tr要素は、HTML5ではalign属性・char属性・charoff属性・valign属性が廃止されています。

■HTML5での使用例

[html]
<table>
<tr><th>順位</th><th>名前</th><th>人気度</th><th>備考</th></tr>
<tr><th>1位</th><td>トロ</td><td>☆☆☆☆☆</td><td>やはり何といってもトロ!</td></tr>
<tr><th>2位</th><td>サーモン</td><td>☆☆☆☆</td><td>ほど良い脂の乗りで女性に人気。</td></tr>
<tr><th>3位</th><td>うに</td><td>☆☆☆</td><td>軍艦もので唯一ランクイン。</td></tr>
<tr><th>4位</th><td>えび</td><td>☆☆☆</td><td>プリプリした歯ごたえが魅力。</td></tr>
<tr><th>5位</th><td>イカ</td><td>☆☆</td><td>やはり外せない甘みのあるイカ。</td></tr>
</table>
[/html]

参考:http://www.htmq.com/html5/tr.shtml

カテゴリー: HTML5, HTMLの基礎知識, ナレッジノート |

tfoot要素[HTML5]

<tfoot>…… テーブル(表)のフッタ部分を定義する

<tfoot>タグは、テーブル(表)のフッタ部分を定義する際に使用します。<tfoot>はテーブルのフッタとなる行グループを表す要素で、カラムの要約で構成されます。

テーブルは作成のしかたによって、行グループ単位でテーブルヘッダ・テーブルボディ・テーブルフッタに分類できる場合があります。テーブルをヘッダ・ボディ・フッタに分けるには、それぞれの行グループを<thead>~</thead>・<tbody>~</tbody>・<tfoot>~</tfoot>で囲みます。これらの要素は省略できますが、指定すればテーブル構造がより明確になるでしょう。

<thead>・<tbody>・<tfoot>は<table>~</table>の子要素として、<caption>・<colgroup>より後に配置します。<thead>は、<tbody>・<tfoot>よりも前に配置します。<tbody>は、<table>~</table>の子要素として複数配置することができますが、<thead>と<tfoot>はそれぞれ1つだけ配置することができます。

■HTML4.01からHTML5へのバージョンアップによる変更点

thead要素・tbody要素・tfoot要素には、HTML4.01ではalign属性・char属性・charoff属性・valign属性が用意されていました。HTML5ではこれらの属性は廃止され、要素固有の属性はありません。

また、HTML4.01では、<tfoot>は<tbody>よりも前に配置することになっていましたが、HTML5では、<tbody>と<tfoot>の配置位置はどちらでも良いことになっています。<tfoot>を<tbody>の前に配置しても、ブラウザ上ではフッタ部分はテーブルの最後に表示されます。

■HTML5での使用例

[html]
<table>
<caption>寿司ネタ人気ランキング</caption>
<colgroup span="1" style="width:30px; background-color:#FF9900;">
<colgroup>
<col span="2" style="width:100px; background-color:#FF3300;">
<col span="1" style="width:250px; background-color:#FFCC00;">
</colgroup>
<thead>
<tr><th>順位</th><th>名前</th><th>人気度</th><th>備考</th></tr>
</thead>
<tbody>
<tr><th>1位</th><td>トロ</td><td>☆☆☆☆☆</td><td>やはり何といってもトロ!</td></tr>
<tr><th>2位</th><td>サーモン</td><td>☆☆☆☆</td><td>ほど良い脂の乗りで女性に人気。</td></tr>
<tr><th>3位</th><td>うに</td><td>☆☆☆</td><td>軍艦もので唯一ランクイン。</td></tr>
<tr><th>4位</th><td>えび</td><td>☆☆☆</td><td>プリプリした歯ごたえが魅力。</td></tr>
<tr><th>5位</th><td>イカ</td><td>☆☆</td><td>やはり外せない甘みのあるイカ。</td></tr>
</tbody>
<tfoot>
<tr><td></td><td>※投票対象の寿司ネタは管理者が選定</td><td>※投票ポイントを集計して星(☆)に換算</td><td>※投票者のコメントから抜粋</td></tr>
</tfoot>
</table>
[/html]

参考:http://www.htmq.com/html5/tfoot.shtml

カテゴリー: HTML5, HTMLの基礎知識, ナレッジノート |

thead要素[HTML5]

<thead>…… テーブル(表)のヘッダ行を定義する

<thead>タグは、テーブル(表)のヘッダ行を定義する際に使用します。<thead>はテーブルのヘッダとなる行グループを表す要素で、カラムのラベル(名前)で構成されます。

テーブルは作成のしかたによって、行グループ単位でテーブルヘッダ・テーブルボディ・テーブルフッタに分類できる場合があります。テーブルをヘッダ・ボディ・フッタに分けるには、それぞれの行グループを<thead>~</thead>・<tbody>~</tbody>・<tfoot>~</tfoot>で囲みます。これらの要素は省略できますが、指定すればテーブル構造がより明確になるでしょう。

<thead>・<tbody>・<tfoot>は<table>~</table>の子要素として、<caption>・<colgroup>より後に配置します。 <thead>は、<tbody>・<tfoot>よりも前に配置します。<tbody>は、<table>~</table>の子要素として複数配置することができますが、<thead>と<tfoot>はそれぞれ1つだけ配置することができます。

■HTML4.01からHTML5へのバージョンアップによる変更点

thead要素・tbody要素・tfoot要素には、HTML4.01ではalign属性・char属性・charoff属性・valign属性が用意されていました。HTML5ではこれらの属性は廃止され、要素固有の属性はありません。
また、HTML4.01では、<tfoot>は<tbody>よりも前に配置することになっていましたが、HTML5では、<tbody>と<tfoot>の配置位置はどちらでも良いことになっています。<tfoot>を<tbody>の前に配置しても、ブラウザ上ではフッタ部分はテーブルの最後に表示されます。

■HTML5での使用例

[html]
<table>
<caption>寿司ネタ人気ランキング</caption>
<colgroup span="1" style="width:30px; background-color:#FF9900;">
<colgroup>
<col span="2" style="width:100px; background-color:#FF3300;">
<col span="1" style="width:250px; background-color:#FFCC00;">
</colgroup>
<thead>
<tr><th>順位</th><th>名前</th><th>人気度</th><th>備考</th></tr>
</thead>
<tbody>
<tr><th>1位</th><td>トロ</td><td>☆☆☆☆☆</td><td>やはり何といってもトロ!</td></tr>
<tr><th>2位</th><td>サーモン</td><td>☆☆☆☆</td><td>ほど良い脂の乗りで女性に人気。</td></tr>
<tr><th>3位</th><td>うに</td><td>☆☆☆</td><td>軍艦もので唯一ランクイン。</td></tr>
<tr><th>4位</th><td>えび</td><td>☆☆☆</td><td>プリプリした歯ごたえが魅力。</td></tr>
<tr><th>5位</th><td>イカ</td><td>☆☆</td><td>やはり外せない甘みのあるイカ。</td></tr>
</tbody>
<tfoot>
<tr><td></td><td>※投票対象の寿司ネタは管理者が選定</td><td>※投票ポイントを集計して星(☆)に換算</td><td>※投票者のコメントから抜粋</td></tr>
</tfoot>
</table>
[/html]

参考:http://www.htmq.com/html5/thead.shtml

カテゴリー: HTML5, HTMLの基礎知識, ナレッジノート |

tbody要素[HTML5]

<tbody>…… テーブル(表)のボディ部分を定義する

<tbody>タグは、テーブル(表)のボディ部分を定義する際に使用します。<tbody>はテーブルの本体となる行グループを表す要素で、データセルなどで構成されます。

テーブルは作成のしかたによって、行グループ単位でテーブルヘッダ・テーブルボディ・テーブルフッタに分類できる場合があります。テーブルをヘッダ・ボディ・フッタに分けるには、それぞれの行グループを<thead>~</thead>・<tbody>~</tbody>・<tfoot>~</tfoot>で囲みます。これらの要素は省略できますが、指定すればテーブル構造がより明確になるでしょう。

<thead>・<tbody>・<tfoot>は<table>~</table>の子要素として、<caption>・<colgroup>より後に配置します。<thead>は、<tbody>・<tfoot>よりも前に配置します。<tbody>は、<table>~</table>の子要素として複数配置することができますが、<thead>と<tfoot>はそれぞれ1つだけ配置することができます。

■HTML4.01からHTML5へのバージョンアップによる変更点

thead要素・tbody要素・tfoot要素には、HTML4.01ではalign属性・char属性・charoff属性・valign属性が用意されていました。HTML5ではこれらの属性は廃止され、要素固有の属性はありません。
また、HTML4.01では、<tfoot>は<tbody>よりも前に配置することになっていましたが、HTML5では、<tbody>と<tfoot>の配置位置はどちらでも良いことになっています。<tfoot>を<tbody>の前に配置しても、ブラウザ上ではフッタ部分はテーブルの最後に表示されます。

■HTML5での使用例

[html]
<table>
<caption>寿司ネタ人気ランキング</caption>
<colgroup span="1" style="width:30px; background-color:#FF9900;">
<colgroup>
<col span="2" style="width:100px; background-color:#FF3300;">
<col span="1" style="width:250px; background-color:#FFCC00;">
</colgroup>
<thead>
<tr><th>順位</th><th>名前</th><th>人気度</th><th>備考</th></tr>
</thead>
<tbody>
<tr><th>1位</th><td>トロ</td><td>☆☆☆☆☆</td><td>やはり何といってもトロ!</td></tr>
<tr><th>2位</th><td>サーモン</td><td>☆☆☆☆</td><td>ほど良い脂の乗りで女性に人気。</td></tr>
<tr><th>3位</th><td>うに</td><td>☆☆☆</td><td>軍艦もので唯一ランクイン。</td></tr>
<tr><th>4位</th><td>えび</td><td>☆☆☆</td><td>プリプリした歯ごたえが魅力。</td></tr>
<tr><th>5位</th><td>イカ</td><td>☆☆</td><td>やはり外せない甘みのあるイカ。</td></tr>
</tbody>
<tfoot>
<tr><td></td><td>※投票対象の寿司ネタは管理者が選定</td><td>※投票ポイントを集計して星(☆)に換算</td><td>※投票者のコメントから抜粋</td></tr>
</tfoot>
</table>
[/html]

参考:http://www.htmq.com/html5/tbody.shtml

カテゴリー: HTML5, HTMLの基礎知識, ナレッジノート |

col要素[HTML5]

<col>…… 表の縦列に属性やスタイルを指定する

<col>タグは、表の縦列に属性やスタイルを指定する際に使用します。<col>は表の縦列をグループ化しませんが、複数の縦列に対して同じ属性やスタイルをまとめて指定することができます。

span属性には、属性やスタイルを適用する縦列の数を指定します。span属性の値に指定できるのは0より大きい正の整数で、負の数値を指定することはできません。

<col>は、必ず<colgroup>~</colgroup>の中に配置します。ただし、<colgroup>がspan属性を持っている場合には<col>を配置することはできません。

■<colgroup>と<col>の違い

<colgroup>と<col>は混同しがちですが、以下の点を意識すると理解しやすいでしょう。

  1. <colgroup>は、表の縦列グループを表す要素です。
  2. <col>は、<colgroup>によってグループ化された縦列グループ内の1つ以上の縦列を表す要素です。
  3. <colgroup>は、表の縦列をグループ化しますが、グループ化した縦列にまとめて属性やスタイルを適用することができます。
  4. <col>は、表の縦列をグループ化しませんが、複数の縦列にまとめて属性やスタイルを適用することができます。
  5. <colgroup>は必ず<table>~</table>の中に配置します。
  6. <col>は必ず<colgroup>~</colgroup>の中に配置します。ただし、<colgroup>がspan属性を持っている場合には、<col>を配置することはできません。
  7. <colgroup>がspan属性を持っている場合には、空要素となります。
  8. まとめると、表の縦列をグループ化する場合、および、表の縦列をグループ化した上で属性やスタイルを指定する場合には<colgroup>を使用します。
    一方、表の縦列をグループ化することなく属性やスタイルを指定する場合には<col>を使用します。

■HTML4.01からHTML5へのバージョンアップによる変更点

col要素は、HTML5ではalign属性・char属性・charoff属性・valign属性・width属性が廃止され、span属性だけが残されています。

■使用できる属性

span属性
縦列の数を指定

■HTML5での使用例

[html]
<table>
<caption>寿司ネタ人気ランキング</caption>
<colgroup span="1" style="width:30px; background-color:#FF9900;">
<colgroup>
<col span="2" style="width:100px; background-color:#FF3300;">
<col span="1" style="width:250px; background-color:#FFCC00;">
</colgroup>
<thead>
<tr><th>順位</th><th>名前</th><th>人気度</th><th>備考</th></tr>
</thead>
<tbody>
<tr><th>1位</th><td>トロ</td><td>☆☆☆☆☆</td><td>やはり何といってもトロ!</td></tr>
<tr><th>2位</th><td>サーモン</td><td>☆☆☆☆</td><td>ほど良い脂の乗りで女性に人気。</td></tr>
<tr><th>3位</th><td>うに</td><td>☆☆☆</td><td>軍艦もので唯一ランクイン。</td></tr>
<tr><th>4位</th><td>えび</td><td>☆☆☆</td><td>プリプリした歯ごたえが魅力。</td></tr>
<tr><th>5位</th><td>イカ</td><td>☆☆</td><td>やはり外せない甘みのあるイカ。</td></tr>
</tbody>
</table>
[/html]

参考:http://www.htmq.com/html5/col.shtml

カテゴリー: HTML5, HTMLの基礎知識, ナレッジノート |

colgroup要素[HTML5]

<colgroup>…… 表の縦列をグループ化する

<colgroup>タグは、表の縦列(カラム)をグループ化する際に使用します。<colgroup>を使用すると、表の1つ以上の縦列をグループ化して、その縦列グループに対して同じ属性やスタイルをまとめて指定することができます。

span属性には、グループ化する縦列の数を指定します。span属性の値に指定できるのは0より大きい正の整数で、負の数値を指定することはできません。

<colgroup>は<table>~</table>の中の、<caption>より後、<thead>・<tbody>・<tfoot>・<tr>より前に配置します。

<colgroup>はspan属性を持つ場合には空要素となり、子孫要素を含むことはできません。反対にspan属性を持たない場合には、子要素として<col>を含むことができます。

尚、<colgroup>と<col>の使い分けについては、<col>のページを参照してください。

■HTML4.01からHTML5へのバージョンアップによる変更点

colgroup要素は、HTML5ではalign属性・char属性・charoff属性・valign属性・width属性が廃止され、span属性だけが残されています。

■使用できる属性

span属性
グループ化する縦列の数を指定

■HTML5での使用例

[html]
<table>
<caption>寿司ネタ人気ランキング</caption>
<colgroup span="1" style="width:30px; background-color:#FF9900;">
<colgroup span="3" style="width:150px; background-color:#FF3300;">
<thead>
<tr><th>順位</th><th>名前</th><th>人気度</th><th>備考</th></tr>
</thead>
<tbody>
<tr><th>1位</th><td>トロ</td><td>☆☆☆☆☆</td><td>やはり何といってもトロ!</td></tr>
<tr><th>2位</th><td>サーモン</td><td>☆☆☆☆</td><td>ほど良い脂の乗りで女性に人気。</td></tr>
<tr><th>3位</th><td>うに</td><td>☆☆☆</td><td>軍艦もので唯一ランクイン。</td></tr>
<tr><th>4位</th><td>えび</td><td>☆☆☆</td><td>プリプリした歯ごたえが魅力。</td></tr>
<tr><th>5位</th><td>イカ</td><td>☆☆</td><td>やはり外せない甘みのあるイカ。</td></tr>
</tbody>
</table>
[/html]

参考:http://www.htmq.com/html5/colgroup.shtml

カテゴリー: HTML5, HTMLの基礎知識, ナレッジノート |

caption要素[HTML5]

<caption>…… テーブル(表)にキャプションをつける

<caption>タグは、テーブル(表)にキャプションをつける際に使用します。<caption>は<table>~</table>の最初の子要素として配置します。

キャプションとは、表のタイトルや説明のことです。例えば、<caption>~</caption>の中に段落を配置して、表の説明文を入れても問題ありません。<figure>~</figure>の子要素に、lt;figcaption>と<table>しか存在しない場合、<figcaption>がテーブルのキャプションとして機能するので、<caption>は省略するべきでしょう。

一般的なブラウザでは、キャプションはテーブルの上部に表示されますが、CSSのcaption-sideプロパティで表示位置を指定することができます。

■HTML4.01からHTML5へのバージョンアップによる変更点

HTML4.01では、caption要素には揃え位置を指定するalign属性が、非推奨とされながらも用意されていました。HTML5では、caption要素のalign属性は廃止されています。揃え位置の指定にはCSSを使用してください。

■HTML5での使用例

[html]
<table>
<caption>
<p>これは、2つのサイコロを振った場合の合計値の早見表です。最初の横行と縦行は、それぞれのサイコロの目を表します。</p>
</caption>
<tbody>
<tr><th></th><th>1</th><th>2</th><th>3</th><th>4</th><th>5</th><th>6</th></tr>
<tr><th>1</th><td>2</td><td>3</td><td>4</td><td>5</td><td>6</td><td>7</td></tr>
<tr><th>2</th><td>3</td><td>4</td><td>5</td><td>6</td><td>7</td><td>8</td></tr>
<tr><th>3</th><td>4</td><td>5</td><td>6</td><td>7</td><td>8</td><td>9</td></tr>
<tr><th>4</th><td>5</td><td>6</td><td>7</td><td>8</td><td>9</td><td>10</td></tr>
<tr><th>5</th><td>6</td><td>7</td><td>8</td><td>9</td><td>10</td><td>11</td></tr>
<tr><th>6</th><td>7</td><td>8</td><td>9</td><td>10</td><td>11</td><td>12</td></tr>
</tbody>
</table><table>
<caption>
<p>これは、2つのサイコロを振った場合の合計値の早見表です。最初の横行と縦行は、それぞれのサイコロの目を表します。</p>
</caption>
<tbody>
<tr><th></th><th>1</th><th>2</th><th>3</th><th>4</th><th>5</th><th>6</th></tr>
<tr><th>1</th><td>2</td><td>3</td><td>4</td><td>5</td><td>6</td><td>7</td></tr>
<tr><th>2</th><td>3</td><td>4</td><td>5</td><td>6</td><td>7</td><td>8</td></tr>
<tr><th>3</th><td>4</td><td>5</td><td>6</td><td>7</td><td>8</td><td>9</td></tr>
<tr><th>4</th><td>5</td><td>6</td><td>7</td><td>8</td><td>9</td><td>10</td></tr>
<tr><th>5</th><td>6</td><td>7</td><td>8</td><td>9</td><td>10</td><td>11</td></tr>
<tr><th>6</th><td>7</td><td>8</td><td>9</td><td>10</td><td>11</td><td>12</td></tr>
</tbody>
</table>
[/html]

参考:http://www.htmq.com/html5/caption.shtml

カテゴリー: HTML5, HTMLの基礎知識, ナレッジノート |