有人可以解释为什么<ul>
elementa不能为空吗?
为什么这个HTML:
<ul>
<li class="header">
<a href="#">Work</a>
<ul/>
</li>
<li class="header">
<a href="#">New</a>
<ul/>
</li>
<li class="header">
<a href="#">Ungrouped</a>
<ul/>
</li>
<li class="header">
<a href="#">Offline</a>
<ul/>
</li>
</ul>
呈现如下:
- 工作
- 新
- 未分组
- 离线
答案 0 :(得分:7)
<ul>
不是有效的自动结算标记,因此浏览器可能会将其视为未正确关闭。您应始终使用结束</ul>
代码。
有关有效自我结束标记的列表,请参阅:
What are all the valid self-closing elements in XHTML (as implemented by the major browsers)?
答案 1 :(得分:3)
单手拍手的声音是什么?
从文档的角度来看,包含零项的列表没有意义,HTML是文档标记语言。
因此规范defines a list要求其中至少有一个列表项。
<!ELEMENT UL - - (LI)+ -- unordered list -->
至于你的第二个问题,在HTML Compatible XHTML only elements which are defined as being EMPTY中(即HTML中禁止结束标记的那些)可能(并且必须)使用自动关闭标记语法。
答案 2 :(得分:1)
因为浏览器(通常)不支持自动关闭XML样式标记。这将有效:
<ul>
<li class="header">
<a href="#">Work</a>
<ul></ul>
</li>
<li class="header">
<a href="#">New</a>
<ul></ul>
</li>
<li class="header">
<a href="#">Ungrouped</a>
<ul></ul>
</li>
<li class="header">
<a href="#">Offline</a>
<ul></ul>
</li>
</ul>
有关详细信息,请参阅:Can a span be closed using <span />
?