webentwicklung-frage-antwort-db.com.de

Ist es richtig, DIV in FORM zu verwenden?

Ich frage mich nur, was denkst du über DIV-Tag in FORM-Tag?

Ich brauche so etwas:

<form>
  <input type="text"/>
  <div> some </div>
  <div> another </div>
  <input type="text" />
</form>

Ist es allgemeine Praxis, DIV in FORM zu verwenden, oder benötige ich etwas anderes?

78
demas

Es ist völlig in Ordnung.

Der form sendet nur seine Eingabetyp-Steuerelemente (* auch Textarea, Select, etc ...).

Sie müssen sich keine Sorgen um ein div innerhalb eines form machen.

117
Royi Namir

Es ist völlig akzeptabel, einen DIV in einem <form> Tag.

Wenn Sie sich das Standard CSS 2.1 Stylesheet ansehen, befinden sich div und p beide im display: block Kategorie. Wenn Sie sich dann die HTML 4.01-Spezifikation für das Formularelement ansehen, enthalten diese nicht nur <p> Tags, aber <table> Tags, also natürlich <div> würde die gleichen Kriterien erfüllen. Da ist auch ein <legend> Tag innerhalb des Formulars in der Dokumentation.

Beispielsweise besteht der folgende Code die HTML4-Validierung im strikten Modus:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> 
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Test</title>
</head>
<body>
<form id="test" action="test.php">
<div>
  Test: <input name="blah" value="test" type="text">
</div>
</form>
</body>
</html>
24
Alex W

Sie können ein <div> innerhalb eines Formulars - dort gibt es kein Problem .... ABER wenn Sie das <div> als Bezeichnung für das input nicht ... label ist eine weitaus bessere Option:

<label for="myInput">My Label</label> 
<input type="textbox" name="MyInput" value="" />
7
ManseUK

Definition und Verwendung

Das Tag definiert eine Unterteilung oder einen Abschnitt in einem HTML-Dokument.

Das Tag wird verwendet, um Blockelemente zu gruppieren, um sie mit Stilen zu formatieren. http://www.w3schools.com/tags/tag_div.asp

Auch DIV - MDN

Das HTML-Element (oder HTML Document Division Element) ist der generische Container für Flow-Inhalte, der von Natur aus nichts darstellt. Es kann verwendet werden, um Elemente für Stilzwecke (unter Verwendung der Klassen- oder ID-Attribute) zu gruppieren oder weil sie Attributwerte wie lang gemeinsam haben. Es sollte nur verwendet werden, wenn kein anderes semantisches Element (wie oder) geeignet ist.

Sie können div innerhalb von Formularen verwenden, wenn Sie über die Verwendung von div anstelle von table sprechen, dann googeln Sie über Tableless Webdesign

2
Habib

Ihre Frage bezieht sich nicht auf das, was Sie in die DIV-Tags einfügen möchten. Wahrscheinlich haben Sie deshalb einige unvollständige/falsche Antworten erhalten. Die Wahrheit ist, dass Sie, wie Royi sagte, DIV-Tags in Ihre Formulare einfügen können. Sie möchten dies beispielsweise nicht für Beschriftungen tun, aber wenn Sie ein Formular mit einer Reihe von Kontrollkästchen haben, die Sie in drei Spalten aufteilen möchten, verwenden Sie auf jeden Fall DIV - Tags (oder SPAN, HEADER usw.) .), um das gewünschte Erscheinungsbild zu erzielen.

2
Clinton

Es ist falsch, <input> als direktes Kind eines <form> zu haben

Übrigens kann <input /> bei einigen Doctypen fehlschlagen

Überprüfen Sie es mit http://validator.w3.org/check


dokumenttyp erlaubt hier kein Element "INPUT"; Fehlen eines der Start-Tags "P", "H1", "H2", "H3", "H4", "H5", "H6", "PRE", "DIV", "ADDRESS"

<input type = "text" />

Das erwähnte Element darf nicht in dem Kontext erscheinen, in dem Sie es platziert haben. die anderen genannten Elemente sind die einzigen, die dort beide erlaubt sind und das genannte Element enthalten können. Dies kann bedeuten, dass Sie ein enthaltendes Element benötigen oder möglicherweise vergessen haben, ein vorheriges Element zu schließen.

Eine mögliche Ursache für diese Meldung ist, dass Sie versucht haben, ein Element auf Blockebene (z. B. "<p>" oder "<table>") in ein Inline-Element (z. B. "<a>", "<span>) einzufügen ", oder" <font> ").

2
stefan bachert

Wie die anderen gesagt haben, ist alles gut, man kann es gut machen. Für mich persönlich versuche ich, mit meinen Elementen eine Form der hierarchischen Struktur beizubehalten, wobei div das äußerste übergeordnete Element ist. Ich versuche, nur tablepul und span in Formularen zu verwenden. Erleichtert es mir nur, die Beziehung zwischen Eltern und Kindern auf my Webseiten im Auge zu behalten.

0
JT Smith