Só estou me perguntando o que você está pensando sobre a DIV-tag dentro da FORM-tag?
Eu preciso de algo assim:
<form>
<input type="text"/>
<div> some </div>
<div> another </div>
<input type="text" />
</form>
É uma prática geral usar DIV
no interior FORM
ou preciso de algo diferente?
html
semantic-markup
demas
fonte
fonte
É totalmente aceitável usar um DIV dentro de uma
<form>
tag.Se você olhar para o padrão CSS 2.1 folha de estilo ,
div
ep
estão ambos nadisplay: block
categoria. Então, olhando para a especificação HTML 4.01 para o elemento de formulário, eles incluem não apenas<p>
tags, mas<table>
tags, portanto, é claro<div>
, atenderiam aos mesmos critérios. Também existe uma<legend>
tag dentro do formulário na documentação.Por exemplo, o seguinte passa na validação de HTML4 em modo estrito:
<!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>
fonte
Você pode usar um
<div>
dentro de um formulário - não há problema nisso ... MAS se você vai usar o<div>
como o rótulo para oinput
não ...label
é uma opção muito melhor:<label for="myInput">My Label</label> <input type="textbox" name="MyInput" value="" />
fonte
É errado ter <input> como filho direto de um <form>
E a propósito <input / > pode falhar em algum doctype
Verifique com http://validator.w3.org/check
o tipo de documento não permite o elemento "INPUT" aqui; faltando um de "P", "H1", "H2", "H3", "H4", "H5", "H6", "PRE", "DIV", "ADDRESS" tag inicial
<input type = "text" />
O elemento mencionado não pode aparecer no contexto em que você o colocou; os outros elementos mencionados são os únicos permitidos e podem conter o elemento mencionado. Isso pode significar que você precisa de um elemento de contenção ou possivelmente que se esqueceu de fechar um elemento anterior.
Uma possível causa para essa mensagem é que você tentou colocar um elemento de nível de bloco (como "<p>" ou "<table>") dentro de um elemento embutido (como "<a>", "<span> "ou" <font> ").
fonte
Sua pergunta não aborda o que você deseja colocar nas tags DIV, o que provavelmente é o motivo pelo qual você recebeu algumas respostas incompletas / erradas. A verdade é que você pode, como disse Royi, colocar tags DIV dentro de seus formulários. Você não quer fazer isso para rótulos, por exemplo, mas se você tem um formulário com um monte de caixas de seleção que deseja organizar em três colunas, então, por suposto, use tags DIV (ou SPAN, HEADER, etc. .) para atingir a aparência e sensação que você está tentando alcançar.
fonte
Também DIV - MDN
Você pode usar div dentro do formulário, se estiver falando sobre o uso de div em vez de tabela, então google sobre o design da web sem tablets
fonte
Como os outros já disseram, está tudo bem, você pode fazer isso muito bem. Para mim, pessoalmente, tento manter uma forma de estrutura hierárquica com meus elementos
div
sendo o elemento pai mais externo. Eu tento usar somentetable
p
ul
espan
dentro de formas. Apenas torna mais fácil para mim controlar as relações entre pais e filhos em minhas páginas da web.fonte
Percebi que sempre que eu iniciaria a tag do formulário dentro de uma div, os irmãos div subsequentes não fariam parte do formulário quando eu inspecionar (inspecionar cromo); doravante, meu formulário nunca seria enviado.
<div> <form> <input name='1st input'/> </div> <div> <input name='2nd input'/> </div> <input type='submit'/> </form>
Achei que se colocasse a tag do formulário fora dos DIVs funcionaria. A tag do formulário deve ser colocada no início do DIV pai. Como mostrado abaixo.
<form> <div> <input name='1st input'/> </div> <div> <input name='2nd input'/> </div> <input type='submit'/> </form>
fonte
Absolutamente não! Ele será renderizado, mas não validará. Use uma etiqueta.
Não está correto. Não está acessível. Você vê isso em alguns sites porque alguns desenvolvedores são apenas preguiçosos. Quando estou contratando desenvolvedores, essa é uma das primeiras coisas que verifico no trabalho dos candidatos. Formulários são desagradáveis, mas reserve um tempo e aprenda a fazê-los corretamente
fonte
Não, não é
<div>
tags sempre são abusadas para criar um layout da web. Seu propósito simbólico é dividir uma seção / parte na página para que um estilo separado possa ser adicionado ou aplicado a ela. [w3schools Doc] [W3C]Depende muito do que você
some
eanother
tem.HTML5 tem tags de significado mais lógico, em vez de tags de layout simples. A
section
,header
,nav
,aside
tudo tem o seu próprio significado semântico a ele. E são usados contra<div>
fonte
<select>
cabe perfeitamente se as escolhas são dadas, se não<a>
ou<buttons>
são boas.