* table 要素 cellpadding 属性 (HTML, XHTML 1)
[1] [[HTML]] の [CODE(HTMLe)[[[table]]]] 要素の
[DFN[[CODE(HTMLa)[cellpadding]] 属性]]は、
UA が表のこまとこまの罫線の間に取るべき間隔を指定します。
仕様書: [[HTML 4]]
[[#comment]]
** スタイル・シート代替
[2] この属性は HTML 4 では'''非推奨'''とされていませんが、
[[スタイル・シート]]で指定するほうが望ましいでしょう。
[3] [[CSS]] では [SAMP(CSS)[[[padding]]]] が使えます。
[[#comment]]
** 属性値
[4] この属性の値は [CODE(SGML)[%[[Length]]]]
です。 [[SGML]] 的には [CODE(SGML)[[[CDATA]]]] です。
[8]
画素値 (無単位整数) で指定すると、4辺ともその幅が取られます。
百分率値で指定すると、利用可能な垂直空間に対してその割合分上下同じ高さで
(それぞれ [CODE(math)[[VAR[p]]/2 %]], あわせて [CODE(math)[[VAR[p]] %]] 分)、
利用可能な水平空間に対してその割合分左右同じ幅で (同)、
それぞれ間隔が取られます。
[5]
この属性は省略可能です。
[10]
[[Netscape Navigator 1.1]] では[[既定値]]が 1
だったようです。
;;
[CITE@en[Tables in Netscape 1.1]]
([TIME[2007-07-01 20:32:43 +09:00]] 版)
[[#comment]]
** レンダリング
[7] 次の図の [SAMP[;]] の部分が [CODE(HTMLa)[cellpadding]]
です。
[PRE[
+-------------+
|#############|
|#;;;#;;;#;;;#|
|#;1;#;2;#;3;#|
|#;;;#;;;#;;;#|
|#############|
|#;;;#;;;#;;;#|
|#;4;#;5;#;6;#|
|#;;;#;;;#;;;#|
|#############|
+-------------+
]PRE]
:[SAMP[|]]:[CODE(HTMLa)[[[border]]]]
:[SAMP[#]]:[CODE(HTMLa)[[[cellspacing]]]]
:[SAMP[;]]:[CODE(HTMLa)[cellpadding]]
[[#comment]]
** 他との関係
[9] [[表]]や[[列]]が [CODE(HTMLa)[[[width]]]]
によって固定幅にされていても、 UA は必要であれば
[CODE(HTMLa)[cellpadding]] のために幅をひろげても構いません
(しひろげなくても構いません) [HTML 4]。
[[#comment]]
** 例
[6]
[PRE(HTML)[
]PRE]
(HTML 4 仕様書より)
この例では、各こまの上下に利用可能な垂直領域の 10% ずつ
(合計で 20%)、左右に利用可能な水平領域の 10% ずつがとられます。
[[#comment]]
** 歴史
*** 誕生
[15]
[[Netscape Navigator 1.1]] が実装しました。
;;
[CITE@en[Tables in Netscape 1.1]]
([TIME[2007-07-01 20:32:43 +09:00]] 版)
[[#comment]]
*** 標準化
[14] 元々 [[HTML+]] や [[HTML 3.0]] の最初の [[I-D]]
に [CODE(HTMLa)@en[[[cellpadding]]]] [[属性]]や
[CODE(HTMLa)@en[[[cellspacing]]]] [[属性]]は含まれていませんでした。
[11] [[Bert Bos]] は [[Dave Raggett]] の [[HTML 3.0]]
案に対するコメントを [[ietf-html]]
の[[メイリング・リスト]]に送っています。
それによると [[Dave Raggett]] の新しい提案には
[CODE(HTMLa)@en[[[cellpadding]]]] [[属性]]と
[CODE(HTMLa)@en[[[cellspacing]]]] [[属性]]が含まれていたようです。
;;
[CITE[html-wg-95q2: More comments on the HTML 3.0 draft]]
;; 残念ながらその Dave の提案は見つかっていません。
[16] Bert
の[[スタイル・シート]]で指定できるではないかという指摘に対し、
Dave は
- 十分一般的なものである
- [[Netscape]] が既に実装している
と述べています。
;; [CITE@en[html-wg-95q2: Re: More comments on the HTML 3.0 draft]]
([[Dave Raggett]] 著、[TIME[1995-04-25]])
[17]
ですが、結局[[スタイル・シート]]で表現できるということでその後の案からは削除したようです。
;;
[CITE@en[html-wg-95q2: Re: IETF HTML/CALS/ICADD table proposal notes, 5Apr95]]
([[Dave Raggett]] 著、[TIME[1995-05-04]])
;; ここで Dave がいう[Q[ちょっと前に送った新しい提案]]というのは多分これ
([CODE(HTMLa)@en[[[cellpadding]]]] にはまったく言及なし):
[CITE[html-wg-95q2: Yet another table proposal for HTML 2.1]]
([[Dave Raggett]] 著、[TIME[1995-05-03]])
[13]
この頃 [[Bert Bos]] も提案を送っていますが、
[CODE(HTMLa)@en[[[cellpadding]]]] [[属性]]や
[CODE(HTMLa)@en[[[cellspacing]]]]
[[属性]]は採用しないと述べています。
その理由として、すべての[[利用者エージェント]]が
[[Netscape Navigator]] のように[[3次元]]に[[枠]]を[[レンダリング]]する
(できる) わけではない、と述べています。
;; [CITE[LISTSERV 15.0 - HTML-WG Archives]]
([TIME[2007-07-01 20:01:46 +09:00]] 版)
[12]
その後 [[HTML表モデル]]は単独の仕様案として
[[I-D]] や [[W3C]] [[WD]] が何度か発行されますが、
最初の [[I-D]] では [CODE(HTMLa)@en[[[cellpadding]]]]
や [CODE(HTMLa)@en[[[cellspacing]]]]
は含まれていませんでした。
;; 初めて単独で出版された[[表]]仕様案
([CODE(HTMLa)@en[[[cellpadding]]]] や
[CODE(HTMLa)@en[[[cellspacing]]]] は含まれていない):
[CITE@en[draft-ietf-html-tables-00]]
([[Dave Raggett]] 著、[TIME[1995-07-07]])
ですが、その次の1995年9月15日の [[W3C]] [[WD]] 以降
[CODE(HTMLa)@en[[[cellpadding]]]]
[[属性]]と [CODE(HTMLa)@en[[[cellspacing]]]]
[[属性]]が追加されています。
;; 初めて [CODE(HTMLa)@en[[[cellpadding]]]]
や [CODE(HTMLa)@en[[[cellspacing]]]]
が定義された[[表]]単独の仕様案:
[CITE@en[HTML3 Tables]]
([[Dave Raggett]] 著、[TIME[1996-12-09 11:46:49 +09:00]] 版)
;; [[I-D]] として初めて [CDOE(HTMLa)@en[[[cellpadding]]]]
や [CODE(HTMLa)@en[[[cellspacing]]]] が定義された版:
[CITE@en[draft-ietf-html-tables-01]]
([[Dave Raggett]] 著、[TIME[1995-10-03]])
[17] この [[WD]]/[[I-D]] は最終的に [[RFC 1942]]
となっています。更に [CODE(HTMLa)@en[[[cellpadding]]]]
[[属性]]や [CODE(HTMLa)@en[[[cellspacing]]]]
[[属性]]は [[HTML 3.2]] や [[HTML 4]] や [[XHTML 1]]
にもそのまま採用されました。[[表]]の特殊性から、 [[HTML 4]]
でも[[非推奨]]とはされませんでした。
[[#comment]]
*** HTML5
[18] [[HTML 5]] は [CODE(HTMLa)@en[[[cellpadding]]]]
[[属性]]と [CODE(HTMLa)@en[[[cellspacing]]]]
[[属性]]を定義していません。
[[#comment]]
*** メモ
[[#comment]]
** 実装
[[#comment]]
** メモ
[[#comment]]
* メモ