89 votes

Est-il correct d'utiliser des DIV à l'intérieur de la FORME?

Je me demandais simplement ce qu'envisagez-vous de la DIV-balise à l'intérieur de la FORME-tag?

J'ai besoin de quelque chose comme ceci:

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

Est-il pratique générale d'utiliser DIV à l'intérieur d' FORM ou j'ai besoin de quelque chose de différent?

138voto

Royi Namir Points 34397

il est vraiment bien .

formulaire de soumettre seulement son entrée type de contrôles.

vous n'avez rien à vous soucier de div.

29voto

Alex W Points 11502

Il est tout à fait acceptable d'utiliser un DIV à l'intérieur d'un <form> balise.

Si vous regardez la valeur par défaut de la feuille de style CSS 2.1, div et p sont à la fois dans l' display: block catégorie. Puis, regardant la spécification HTML 4.01 pour l'élément de formulaire, ils ne comprennent pas seulement <p> tags, mais <table> tags, bien sûr, <div> permettrait de répondre aux mêmes critères. Il y a aussi un <legend> balise à l'intérieur de la forme dans la documentation.

Par exemple, le suivant passe HTML4 validation en mode strict:

<!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>

11voto

ManseUK Points 26965

Vous pouvez utiliser un <div> dans une forme - il n'y a pas de problème .... MAIS si vous allez utiliser l' <div> comme l'étiquette de l' input n' ... label est une option bien meilleure :

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

3voto

stefan bachert Points 4698

C'est mal d'avoir des <input> comme un enfant direct d'un <form>

Et par la façon dont <input /> peut échouer dans certains doctype

Vérifier avec http://validator.w3.org/check


type de document ne permet pas l'élément "contribution" ici; manque un de "P", "H1", "H2", "H3", "H4", "H5", "H6", "PRE", "DIV", "ADRESSE" start-tag

<input type="text" />

L'élément mentionné n'est pas autorisé à apparaître dans le contexte dans lequel vous avez placé; les autres éléments sont les seuls qui sont autorisés et peuvent contenir l'élément mentionné. Cela pourrait signifier que vous avez besoin d'un élément contenant, ou éventuellement que vous avez oublié de fermer une de l'élément précédent.

Une des causes possibles de ce message est que vous avez tenté de mettre un bloc de niveau élément (par exemple, "<p>" ou "<table>") à l'intérieur d'un élément inline (comme "<a>", "<span>" ou "<font>").

3voto

Habib Points 93087

Définition et Utilisation

La balise définit une division ou une section dans un document HTML.

La balise est utilisée pour bloc de groupe-éléments pour les mettre en forme avec styles. http://www.w3schools.com/tags/tag_div.asp

Également DIV - MDN

L'élément HTML (ou un Document HTML Division de l'Élément) est l' conteneur générique pour le flux de contenu, ce qui n'est pas, en soi, représenter quoi que ce soit. Il peut être utilisé pour regrouper des éléments de style fins (à l'aide de la classe ou l'id d'attributs), ou parce qu'ils partagent les valeurs d'attribut, comme la lang. Il doit être utilisé uniquement lorsqu'aucune autre sémantique de l'élément (par exemple, ou ) est approprié.

Vous pouvez utiliser des div à l'intérieur de la forme, si vous parlez à l'aide de div à la place de la table, puis de google au sujet de Tableless web design

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X