Szukałem listy tagów, które są dostępne w tagu <li>
, ale nie mogłem znaleźć żadnego odniesienia.
Czy jest możliwe, że dowolny element bloku HTML 4+ zgodny ze standardami jest w nich dozwolony?
Szukałem listy tagów, które są dostępne w tagu <li>
, ale nie mogłem znaleźć żadnego odniesienia.
Czy jest możliwe, że dowolny element bloku HTML 4+ zgodny ze standardami jest w nich dozwolony?
Odpowiedzi:
TL; DR : <li>
może zawierać dowolny element, który jest ważny w <body>
.
W specyfikacji HTML 4.01 dla list znajdziesz odpowiedni fragment DTD:
<!ELEMENT LI - O (%flow;)* -- list item -->
Określa, że <li>
może zawierać zawartość przepływu , która jest zbiorem wszystkich elementów blokowych i wbudowanych .
Specyfikacja HTML5 dla obiektu<li>
jest taka sama, ponieważ zezwala również na dowolną zawartość przepływu .
Jest to element blokowy, więc prawie wszystko jest dozwolone. Problem pojawia się tylko wtedy, gdy umieszczasz elementy blokowe wewnątrz elementów liniowych.
pretty much
wszystko jest dozwolone”. Istnieje 171 upvoted odpowiedź na to pytanie 7-letni więc myślę, że ludzie będą w porządku
Tak, prawie. Możesz mieć listy wewnątrz list ( wewnątrz lista wewnętrzna musi znajdować się wewnątrz an<li>
lub po prostu luźno wewnątrz <ol>
/, <ul>
<li>
), elementy blokowe i elementy wbudowane.
Dla mnie nie miałoby sensu umieszczać <table>
wewnątrz an <li>
, ale nawet to jest nadal aktualne.
Możesz skorzystać z usługi weryfikacji znaczników W3C, aby przetestować swoje sprawy, aby dowiedzieć się, czy Twoje znaczniki są prawidłowe.
Ten walidator sprawdza poprawność znaczników dokumentów internetowych w HTML, XHTML, SMIL, MathML itp.