2

現在、JSP を使用して Java EE Web アプリケーションを作成していますが、HTML タグについて質問があります。

フィールドセットを使用してメイン ページのフォームを適切に構成していますが、当惑し、次のことが合法であるかどうか疑問に思っていました。

<fieldset id="FieldMain">
    <form method="post" action="servletA">
        <input name="a" type="text" />
        <fieldset id="FieldA">
            <input name="b" type="text" />
            <input name="c" type="text" />
            <input name="d" type="submit" value="Go for A" />
        </fieldset>
    </form>
    <form method="post" action="servletB">
        <fieldset id="FieldB">
            <input name="e" type="text" />
            <input name="f" type="text" />
            <input name="g" type="submit" value="Go for B" />
        </fieldset
    </form>
</fieldset>

望ましい結果は、「Go for A」ボタンをクリックすると、フィールド a、b、および c (a はフィールドセット fieldA の外にありますが、フォーム A タグ内にあります) が考慮され、B の go をクリックするとフィールド e のみが取得されます。 f.

つまり、フィールド セットを使用する場合、1 つのフィールドセット タグで複数のフォームを使用できますか? form タグ内にある限り、fieldset タグの外側にいくつかのフィールドを含めることはできますか?

ありがとうございました :-)

4

1 に答える 1

0

合法ですが、これを行うことは意図されていません

FIELDSET 要素を使用すると、作成者はテーマ別に関連するコントロールとラベルをグループ化できます。コントロールをグループ化することで、ユーザーが目的を理解しやすくなると同時に、視覚的なユーザー エージェントのタブ ナビゲーションと音声指向のユーザー エージェントの音声ナビゲーションが容易になります。この要素を適切に使用すると、ドキュメントがよりアクセスしやすくなります。

ソース: http://www.w3.org/TR/html4/interact/forms.html#h-17.10

過去の議論から覚えている限りでは、標準の文字に従って合法であり、DTD もブロック要素が有効な場合に有効にします。意図については、それを判断するのが難しいですが、フォームでのみ使用することを意図しているように感じます。なぜそれがはるかに広い範囲になったのかわかりません。

また、CSS標準ではそうすべきとは述べていませんが、フィールドセットは新しいスタッキングコンテキストを作成することに注意してください(それとレンダリングされるデフォルトの方法について考えると論理的ですが、標準のAFAIKでは言及されていません)。

IMHOフォーム外での広範な使用および/または新しいスタッキングコンテキストへの依存は、将来の証明コードが必要な場合に危険です。

ソース: http://www.webmasterworld.com/html/3915579.htm

于 2013-01-04T15:08:33.817 に答える