Мне просто интересно, что вы думаете о DIV-теге внутри FORM-тега?
Мне нужно что-то вроде этого:
<form>
<input type="text"/>
<div> some </div>
<div> another </div>
<input type="text" />
</form>
Это обычная практика - использовать DIV
внутрь FORM
или мне нужно что-то другое?
html
semantic-markup
демас
источник
источник
Вполне допустимо использовать DIV внутри
<form>
тега.Если вы посмотрите на таблицу стилей CSS 2.1 по умолчанию ,
div
иp
оба они находятся вdisplay: block
категории. Затем, глядя на спецификацию HTML 4.01 для элемента формы, они включают не только<p>
теги, но и<table>
теги, поэтому, конечно,<div>
будут соответствовать тем же критериям. В документации также есть<legend>
тег внутри формы.Например, следующее проходит проверку HTML4 в строгом режиме:
<!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>
источник
Вы можете использовать
<div>
внутри формы - здесь нет проблем .... НО если вы собираетесь использовать в<div>
качестве метки дляinput
dont ...label
это гораздо лучший вариант:<label for="myInput">My Label</label> <input type="textbox" name="MyInput" value="" />
источник
Неправильно иметь <input> в качестве прямого потомка <form>
И, кстати, <input / > может не работать на каком-то doctype
Проверьте это с помощью http://validator.w3.org/check
тип документа не позволяет использовать здесь элемент «INPUT»; отсутствует один из начальных тегов "P", "H1", "H2", "H3", "H4", "H5", "H6", "PRE", "DIV", "ADDRESS"
<input type = "text" />
Упомянутый элемент не может появляться в контексте, в котором вы его разместили; остальные упомянутые элементы - единственные, которые разрешены там и могут содержать упомянутый элемент. Это может означать, что вам нужен содержащий элемент, или, возможно, вы забыли закрыть предыдущий элемент.
Одна из возможных причин этого сообщения заключается в том, что вы попытались поместить элемент уровня блока (например, «<p>» или «<table>») внутри встроенного элемента (например, «<a>», «<span> "или" <font> ").
источник
Ваш вопрос не касается того, что вы хотите поместить в теги DIV, вероятно, поэтому вы получили неполные / неправильные ответы. На самом деле, как сказал Рой, вы можете поместить теги DIV в свои формы. Вы не хотите делать это, например, для ярлыков, но если у вас есть форма с кучей флажков, которые вы хотите разместить в трех столбцах, тогда обязательно используйте теги DIV (или SPAN, HEADER и т. .), чтобы добиться того внешнего вида, которого вы пытаетесь достичь.
источник
Также DIV - MDN
Вы можете использовать div внутри формы, если вы говорите об использовании div вместо таблицы, тогда Google о веб-дизайне без таблиц
источник
Как уже говорили другие, все хорошо, у вас все отлично. Лично я стараюсь поддерживать форму иерархической структуры с моими элементами, при
div
этом внешний элемент является самым родительским. Стараюсь использовать толькоtable
p
ul
иspan
внутренние формы. Просто мне легче отслеживать отношения между родителями и детьми на моих веб-страницах.источник
Я заметил, что всякий раз, когда я запускал тег формы внутри div, последующие братья и сестры div не были бы частью формы, когда я проверяю (chrome inspect) с этого момента моя форма никогда не будет отправляться.
<div> <form> <input name='1st input'/> </div> <div> <input name='2nd input'/> </div> <input type='submit'/> </form>
Я подумал, что если поместить тег формы вне DIV, это сработает. Тег формы должен быть помещен в начало родительского DIV. Как показано ниже.
<form> <div> <input name='1st input'/> </div> <div> <input name='2nd input'/> </div> <input type='submit'/> </form>
источник
Точно нет! Он будет отображаться, но не будет подтвержден. Используйте этикетку.
Это не так. Это не доступно. Вы видите это на некоторых сайтах, потому что некоторые разработчики просто ленивы. Когда я нанимаю разработчиков, это одна из первых вещей, которые я проверяю при работе с кандидатами. Формы отвратительны, но не торопитесь и научитесь делать их правильно
источник
Нет, это не так
<div>
теги всегда используются для создания веб-макета. Его символическая цель - разделить раздел / часть на странице, чтобы к нему можно было добавить или применить отдельный стиль. [W3schools Doc] [W3C]Это сильно зависит от того, что у вас
some
иanother
есть.HTML5 имеет более логические значения тегов вместо простых тегов макета.
section
,header
,nav
,aside
Все имеют свое собственное смысловое значение для него. И используются против<div>
источник
<select>
идеально подходит, если варианты даны, если нет<a>
или<buttons>
хороши.