Какие теги разрешены внутри <li>?


133

Я искал список тегов, доступных внутри <li>, но не нашел ссылки.

Возможно ли, что в них разрешен любой соответствующий стандартам блочный элемент HTML 4+?

Ответы:


199

TL; DR : <li>может содержать любой элемент, действительный в <body>.

В спецификации HTML 4.01 для списков вы найдете соответствующий фрагмент DTD:

<!ELEMENT LI - O (%flow;)* -- list item -->

Это указывает, что объект <li>может содержать потоковый контент , который представляет собой совокупность всех блочных и встроенных элементов.

Спецификация HTML5 для объекта такая<li> же, поскольку допускает любой потоковый контент .


7

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


3
P-теги являются элементами уровня блока, но не могут содержать элементы уровня блока. «Все идет» не совсем верно в отношении уровня блоков: stackoverflow.com/questions/8397852/…
HoldOffHunger 05

Следовательно, « pretty muchвсе идет». На этот вопрос семилетней давности проголосовали 171 человек, поэтому я думаю, что люди будут в порядке
Скотт Браун

4

Ага, в значительной степени. У вас могут быть списки внутри списков ( внутри <li>или просто внутри <ol>/ <ul> внутренний список должен быть внутри<li> ), блочные элементы и встроенные элементы.

Для меня не имеет большого смысла помещать <table>внутрь <li>, но даже это все еще в силе.


1

Вы можете использовать службу проверки разметки W3C для проверки ваших случаев, чтобы узнать, действительна ли ваша разметка.

Этот валидатор проверяет правильность разметки веб-документов в HTML, XHTML, SMIL, MathML и т. Д.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.