Правильно ли использовать DIV внутри формы?


мне просто интересно, что вы думаете о DIV-tag внутри FORM-tag?

мне нужно что-то вроде этого:

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

это общая практика, чтобы использовать DIV внутри FORM или мне нужно что-то другое?

9 71

9 ответов:

Это совершенно нормально .

The form будет представлять только свои элементы управления типа ввода (*также Textarea,Select и т. д...).

вам не о чем беспокоиться div внутри form.

вполне приемлемо использовать DIV внутри <form> тег.

если вы посмотрите на значение по умолчанию CSS 2.1 stylesheet,div и p находятся в

можно использовать <div> внутри формы-там нет никаких проблем .... но если вы собираетесь использовать <div> как метки input нет ... label это гораздо лучший вариант:

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

неправильно иметь в качестве прямого потомка

и кстати /> может произойти сбой на некоторых doctype

проверьте его с помощью http://validator.w3.org/check


тип документа не позволяет элемент "вход" здесь; отсутствует один из "P", "H1", "H2", "H3", "H4", "H5", "H6", "PRE", "DIV", "ADDRESS" start-tag

указанный элемент не допускается появляются в контексте, в котором вы его разместили; другие упомянутые элементы являются единственными, которые разрешены там и могут содержать упомянутый элемент. Это может означать, что вам нужен содержащий элемент или, возможно, вы забыли закрыть предыдущий элемент.

одна из возможных причин этого сообщения заключается в том, что вы попытались поместить элемент уровня блока (например, "

" или "

") внутри встроенного элемента (например, "", "" или "").

ваш вопрос не касается того, что вы хотите поместить в теги DIV, и, вероятно, поэтому вы получили некоторые неполные/неправильные ответы. Правда в том, что вы можете, как сказал Ройи, поместить теги DIV внутри своих форм. Например, вы не хотите делать это для меток, но если у вас есть форма с кучей флажков, которые вы хотите разложить на три столбца, то обязательно используйте теги DIV (или SPAN, HEADER и т. д.) чтобы выполнить внешний вид и чувствовать, что вы пытаетесь достичь.

определение и использование

тег определяет подразделение или раздел в HTML-документе.

тег используется для группировки блочных элементов для их форматирования с помощью стили. http://www.w3schools.com/tags/tag_div.asp

и DIV-MDN

элемент HTML (или элемент разделения документа HTML) является универсальный контейнер для содержимого потока, который является не представляю что угодно. Он может быть использован для группировки элементов для укладки цели (с использованием атрибутов класса или идентификатора) или потому, что они совместно используются значения атрибутов, такие как lang. Он должен использоваться только тогда, когда нет других семантический элемент (например, или ) является целесообразным.

вы можете использовать div внутри формы, если вы говорите об использовании div вместо таблицы, то google о Tableless web design

как уже говорили другие, это все хорошо, вы можете сделать это просто отлично. Для меня лично я стараюсь сохранить форму иерархической структуры с моими элементами с div будучи внешним самым родительским элементом. Я стараюсь использовать только tablepul и span внутри формы. Просто мне легче отслеживать отношения родителей / детей внутри мой веб-страниц.

абсолютно нет! Он будет отображаться, но он не будет проверять. Используйте ярлык.

Это не правильно. Это не доступно. Вы видите это на некоторых сайтах, потому что некоторые разработчики просто ленивы. Когда я нанимаю разработчиков, это одна из первых вещей, которые я проверяю в работе кандидатов. Формы противные, но не торопитесь и научитесь делать их правильно

нет, это не

<div> теги всегда используются для создания веб-макета. Его символическая цель состоит в том, чтобы разделить раздел/часть на странице так, чтобы отдельный стиль мог быть добавлен или применен к нему. [w3schools док][W3C]

это сильно зависит от того, что ваш some и another есть.

HTML5, имеет более логическое значение тегов, вместо того, чтобы иметь простые теги макета. Элемент section,header,nav,aside все имеет свой собственный смысловой смысл. И используются против <div>