为什么在<div>
内使用<li>
时,以下代码有效?
<ul>
<li class="aschild">
<div class="nav">Test</div>
</li>
</ul>
答案 0 :(得分:57)
是的,您可以在li中使用div,它将验证。
<!ELEMENT li %Flow;>
<!ENTITY % Flow "(#PCDATA | %block; | form | %inline; | %misc;)*">
<!ENTITY % block "p | %heading; | div | %lists; | %blocktext; | fieldset | table">
答案 1 :(得分:40)
在<li>
内,您可以自然地将任何内容放入<div>
。在这个意义上它们没有什么不同。
它也应该在HTML4,XHTML和HTML5中有效。
这是 NOT 有效(因此您找到的关于“列表中没有div”的来源可能会引用这种情况):
<ul>
<li></li>
<div></div>
<li></li>
</ul>
所以:列表(ul
,ol
)只能将li
作为孩子。但是li
s可以像孩子一样拥有任何东西。
答案 2 :(得分:12)
因为<li>
是一个块元素,而不是像<span>
或<a>
这样的内联元素。
答案 3 :(得分:7)
<li>
是一个块元素,与内部的其他块元素完全一致。
答案 4 :(得分:4)
是的,你可以。尽可能多。