web-dev-qa-db-ja.com

<form>なしで<input>は整形式ですか?

<input>に入れずに<form>を使用することは有効ですか?

ページ内のいくつかのフィールドをマークアップするプロセスがあり、入力フィールドのあるページを見つけましたが、期待したとおりにマークアップされていません。
しばらく時間がかかりましたが、フォーム要素を取得してからフィールドを取得するプロセスが、フォームがないためにこれらが失われる原因となったことがわかりました。

205
Greg Domjan

<input>なし<form>有効なようです 、はい(少なくともHTML 4.01の場合、17.2.1の終わり近くを見てください):

コントロールの作成に使用される要素は、通常FORM要素内に表示されますが、ユーザーインターフェイスの構築に使用される場合、FORM要素宣言の外部にも表示される場合があります。これについては、組み込みイベントに関するセクションで説明します。フォームの外部のコントロールは正常なコントロールにはなれないことに注意してください。

187
ChristopheD

W3Cバリデーター で以下をチェックし、これが有効であることを確認しました。

<!DOCTYPE html>
<html>
<head>
  <title>test</title>
</head>
<body>
  <input type='text' />
</body>
</html>
64
Wai Yip Tung

最新の仕様への参照:

HTML 5.2-W3C勧告(2017年12月14日)

フォームに関連付けられた要素は、要素のフォーム所有者と呼ばれる<form>要素と関係を持つことができます。フォームに関連付けられた要素が<form>要素に関連付けられていない場合、そのフォームの所有者はnullと呼ばれます。

2
David

MDNによると可能です:

要素の外部でフォームウィジェットを使用することは常に可能ですが、使用する場合、そのフォームウィジェットはどのフォームとも関係ありません。そのようなウィジェットはフォームの外部で使用できますが、独自に何もしないため、そのようなウィジェットには特別な計画が必要です。 JavaScriptを使用して動作をカスタマイズする必要があります。

HTML5では、HTMLフォーム要素にフォーム属性が導入されています。で囲まれていない場合でも、要素をフォームに明示的にバインドできるようにする必要があります。残念ながら、当分の間、ブラウザ間でのこの機能の実装は、それを信頼するにはまだ十分ではありません。

1
Adnan Faradhi

はい、フォームなしで有効な入力を取得できます。

0
heisenberg