[1] HTML の要素型 tbody,
thead, tfoot, colgroup,
col, tr, th,
td で定義されている
valign 属性は、
こま内でのデータの位置を指定します。
[2] この属性は HTML 4 では非推奨とされてはいませんが、 スタイル・シートを使って指定するべきでしょう。
[3] CSS では vertical-align 特性などが使えます。
| 属性値 | 説明 |
top | データは上にあわせて流す |
middle | データは垂直中央になるように流す |
bottom | データは下にあわせて流す |
baseline | 文データは最初の文行の基線が同じ表行で一致するように配置 (2文行目以降は無制約) |
[6] HTML 4 DTD 的には既定値はありません。 HTML 4
仕様書によれば既定値は middle です。
一方で上位要素からの継承規則があります。
(継承しても得られないときの既定値が middle なのでしょうか?)
継承規則については %cellvalign
の説明をみてください。
[11]
HTML 4 の DTD で定義されている引数実体
%cellvalign は、
表のこま内の垂直方向の揃え位置に関する1つの属性を含んでいます。
| 属性名 | 説明 |
valign | 揃え位置 |
仕様書: HTML 4 <IW:HTML4:"struct/tables.html#alignment">
[14]
この属性集合は HTML の要素型 tbody,
thead, tfoot, colgroup,
col, tr, th,
td で参照されています。
[15]
姉妹属性集合 %cellhalign というのもあります。
[16]
表では、 valign, dir, lang
の3つの属性は、直接指定がなければ次の優先順で上位要素から継承します。
p) の指定th または td) の指定tr または thead・
tbody・tfoot) の指定col または colgroup)
の指定table) の指定仕様書: HTML 4 Inheritance of alignment specifications <IW:HTML4:"struct/tables.html#alignment-inheritance">
[17]
HTML 4 仕様書では style
属性も >>16 の規則で継承することになっていますが・・・。
[18]
%cellhalign と継承規則はほとんど同じですが、行と列の優先順序が逆です。
[7] HTML4 までの SGML として定義されていた仕様に従えば属性名は省略できるはずでしたが、 現実のWWWブラウザは属性名対応していませんでした。
[4] この属性は HTML 4 DTD では属性集合
%cellvalign; に属していました。
[10] HTML を解説した Webサイトの中には、 この属性が HTML 4 や XHTML 1.0 で非推奨とされていると説明しているものがありますが、 事実に反します。
[12] MathML の math 要素には altimg
属性に対する altimg-valign 属性があり、 HTML
の valign 属性と似ていますが、構文的には違っています。