Estive pesquisando a lista de tags disponíveis em um arquivo <li>, mas não encontrei nenhuma referência.
É possível que algum elemento de bloco HTML 4+ compatível com os padrões seja permitido neles?
Estive pesquisando a lista de tags disponíveis em um arquivo <li>, mas não encontrei nenhuma referência.
É possível que algum elemento de bloco HTML 4+ compatível com os padrões seja permitido neles?
Respostas:
TL; DR : um <li>pode conter qualquer elemento válido <body>.
Na especificação HTML 4.01 para listas, você encontrará o extrato relevante da DTD:
<!ELEMENT LI - O (%flow;)* -- list item -->
Isso especifica que um <li>pode conter conteúdo de fluxo , que é a coleção de todos os elementos de bloco e embutidos .
A especificação HTML5 de um<li> é a mesma, pois também permite qualquer conteúdo de fluxo .
É um elemento de nível de bloco, praticamente tudo vale. O problema só ocorre quando você coloca elementos no nível do bloco dentro dos elementos embutidos.
pretty muchvale tudo'. Há uma resposta upvoted 171 sobre esta questão 7 anos de idade, então eu acho que as pessoas vão estar ok
Sim, praticamente. Você pode ter listas dentro de listas ( dentro da lista a lista interna deve estar dentro de um<li>ou apenas soltas dentro da <ol>/ <ul><li> ), elementos de bloco e elementos embutidos.
Para mim, não faria muito sentido colocar um <table>dentro de um <li>, mas mesmo assim ainda é válido.
Você pode usar o Serviço de validação de marcação do W3C para testar seus casos e saber se sua marcação é válida ou não.
Este validador verifica a validade da marcação de documentos da Web em HTML, XHTML, SMIL, MathML, etc.