#?SuikaWiki/0.9 ,仕様 ,開始タグ,終了タグ,内容 ,[[HTML4]],必須,必須,1*([[%block;]] / [[script要素]]) *属性 ,[[accept]] ,[[%ContentTypes;]], ,HTML4 ,[[accept-charset]] ,[[%Charsets;]] ,"UNKNOWN" ,HTML4 ,action 属性 >>1 ,[[URI]] ,必須 ,HTML4 ,[[class属性]] , , ,HTML4 ,[[dir属性]] , , ,HTML4 ,enctype 属性 >>3 ,[[媒体型]],"application/x-www-form-urlencoded",HTML4 ,[[id属性]] , , ,HTML4 ,[[method]] >>2 ,"get" / "post" ,"get" ,HTML4 ,[[lang]] , , ,HTML4 ,[[name]] ,[[CDATA]] , ,HTML4 ,[[組込催事属性]] ,[[%Script;]] , ,HTML4 非推奨 ,[[style属性]] , , ,HTML4 ,[[target属性]] , , ,HTML4 非推奨 ,[[subject]] ,[[CDATA]] , , ,[[title]] ,[[CDATA]] , ,HTML4 [[#comment]] **action 属性 [1] form の送信先をあらわす [[URI]] で、必須。 () [8] [[HTML4]] では[[方式]]が [[HTTP]] の [[URI]] 以外の値の場合、送信時の動作は未定義です。 () (よって処理系に依存します。) [[#comment]] **enctype 属性 [3] method 属性 (>>2) の値が "post" の際に使われる[[媒体型]] (大文字・小文字を区別しない)。 () [4] 媒体型にパラメーターが含まれるのかは不明。 (HTML4 の規定は曖昧。) 古い時代の用例は確認されている。 ([SAMP[enctype="text/plain;charset=iso-2022-jp"]]) [5] >>4 HTML4 は大文字・小文字を区別しないとしているが、パラメーター値の区別は定義依存だから、 HTML4 ではパラメーターは含まれないのかも。 - [9] HTML4では [[UA]] は >>5 と >>6 に対応しなければなりません。 (17.13.4) [[#comment]] ***実装または用例が確認されている値 -[5] [[application/x-www-form-urlencoded媒体型]]: 既定値。 -[6] [[multipart/form-data媒体型]]: [[type属性]]が [CODE(HTML)[file]] の [[input要素]]ではこの値である必要 () -[7] [[text/plain媒体型]]: 主に action 属性の URI が [[mailto:]] の時に使われる。 -[12] [[application/sgml-form-urlencoded媒体型]]: [[Lynx]] が実装。 [[#form:'%text(id=>mt,label=>媒体型);%text(id=>mst,label=>/); %text(id=>comment,size=>20);%submit(label=>追加);':'-[%index;] [[%text(source=>mt);/%text(source=>mst);媒体型]]: %text(source=>comment);']] **method 属性 [2] form を送信する時の [[HTTP]] [[方式]]を指定。既定値は "get"。 大文字・小文字を区別しない。値は "get" または "post" のみ。 () [4] HTTP 以外の[[プロトコル]]で送信する場合はそのプロトコルに応じて適当な値を指定しておかないといけないと思われ。 また [[UA]] も必要ならこの値を無視して適当な形で送らないといけないかと。 [8] [[HTML4]] では "get", "post" 以外の値の場合、送信時の動作は未定義です。 () (そもそも HTML4 に適合しないと思うんだが。) *メモ - [10] ''File Upload CGIで知らないと困ること'' - [11] [[input要素]]などを直接内容に持つことは'''出来ません'''ので注意が必要です。 (Transitional とかだと話は別ですが。) - [13] 1つの form[type=file] 要素を使って複数ファイルをうpする ([[multipart/mixed]] 使用。) のは、 [[UA]] で対応してるのはなさげ、サーバーもおそらく全滅だろうという感じですね。 [[www-html]] で [[Opera]] の特定の版では出来るという未確認情報がありますが、最新版では出来ないらしいし、勘違いかなんかじゃないかなあ。 - [14] [CODE(HTML)[FORM]] 要素の既定スタイル・シートでのレンダリングで余白が空くことがあるので、 [[td]] 要素の内容にするときには [CODE(HTML)[
]] タグを [CODE(HTML)[]] タグの外に出すといい、という素晴らしき[[不思議マーク付け]]の[[裏技]]があるそうです。 - [15] WinIE 3.02 用の file upload add-on は1997年の中ごろに出ました。