HTML中的<li>标记是否有结尾标记?

use*_*298 28 html html-lists

所以,我在大学里学习HTML列表,教授说<li>没有结束标记</li>以及其他一些标签,比如<img><br>.这是正确与否?因为我在最后看到很多使用标签的模板/主题,许多网站也教你</li>存在,所以我不确定是谁相信以及使用的正确方法是<li>什么?

我之所以这么说是因为上次我们学习了<img>标签,他说alt=""当你悬停鼠标时,该属性会给你一个显示在图像上的文字,当我在这里问到这个时,这就是它的唯一文本.他对那个案子说错了,这也让我对此感到好奇.

谢谢.

uno*_*nor 54

li元素有一个结束标记(</li>),但在某些情况下它是可选的:

一个li元件的端标签可以,如果被省略li元件之后紧接着另一个li元件或者如果在父元素没有更多的内容.

  • @JeremyJohnson这根本不是真的.现代浏览器是为HTML合规性而构建的,HTML规范明确指出结束标记是可选的. (7认同)
  • *"</ li>不是XHTML合规性的可选项.由于大多数浏览器都是围绕这些规范构建的,因此将来可能会出现问题."*嗯?XHTML已经过时,旧浏览器对HTML4没有任何问题,新浏览器也没有HTML5的问题. (5认同)
  • 从[W3 HTML5规范的1.6](http://www.w3.org/TR/html5/introduction.html#html-vs-xhtml)*"有各种具体语法......,其中两个被定义在这个规范中.**第一个这样的具体语法是HTML语法.这是大多数作者建议的格式.它与大多数遗留的Web浏览器兼容.**如果文档是用text/html MIME类型传输的,那么它将被Web浏览器作为HTML文档处理......*(强调我的) (4认同)
  • @JeremyJohnson:你的论点与这个问题无关.您喜欢XHTML,并且似乎认为所有浏览器都应该并且可能只支持该标记.尽管你可能想要它,但这不是现实世界. (3认同)
  • </ li>不是XHTML合规性的可选项.由于大多数浏览器都是围绕这些规范构建的,因此将来可能会出现问题.这并不意味着它会在这里和现在引起问题,但它可能在将来发生.未包含结束标记意味着浏览器必须解释应该在哪里.如果浏览器无法正确执行此操作,则可能会导致问题.为什么不继续告诉它在哪里结束标签?它被认为是专业标准的更好的实践,它将避免在浏览器改变时可能出现的麻烦错误. (2认同)
  • @JeremyJohnson如果有所有这些证明和文档,那么请提供一些(这不是一些人的博客文章).*"HTML5也比HTML4更贴近XHTML"*HTML5允许没有任何值的布尔属性,以及像HTML4这样的删除结束标记.如何更接近XHTML? (2认同)
  • 值得注意的是 `&lt;li&gt;` 不是特例,`&lt;html&gt;, &lt;head&gt;, &lt;body&gt;, &lt;dt&gt;, &lt;dd&gt;, &lt;p&gt;, &lt;rb&gt;, &lt;rt&gt;, &lt; rtc&gt;、&lt;rp&gt;、&lt;optgroup&gt;、&lt;option&gt;、&lt;thead&gt;、&lt;tbody&gt;、&lt;tfoot&gt;、&lt;tr&gt;、&lt;td&gt;、&lt;th&gt;` 结束标记在某些情况下可以省略。 (2认同)

Mal*_*chi 10

省略结束标签并不是一种好的编码实践.

如果你总是写入结束标签

  1. 如果您需要从HTML更改为XHTML,您将永远不会遇到问题
  2. 你总会知道元素的结尾
  3. 它更干净,更容易阅读.

从语义上讲,所有标签都有一个开始标签和一个结束标签,无论你是否使用它们都完全不同.

  • `所有标签都有一个开始标签和一个结束标签`,这并不完全正确 (5认同)
  • @malachi你选择了一个不好的例子,标签标签有一个开头和结尾,因为标签包含内容所以使用它是有意义的.`<label> name:<input> </ label>`就是一个例子.一个更好的例子是``<hr>`.并非所有标签都有结尾,有些实际上是禁止的,比如hr标签,请查看https://www.w3.org/TR/html4/present/graphics.html#h-15.3请注意这是针对html4的 (3认同)
  • 在某些情况下,省略“&lt;/li&gt;”结束标记会使代码更加清晰且更易于阅读:例如,当“&lt;li&gt;”标记之间不能有空格时。当使用“display: inline-block;”时,“&lt;li&gt;”元素之间的空格通常是不需要的,省略“&lt;/li&gt;”可以轻松解决此问题。 (2认同)

Sim*_*erg 7

HTML和XHTML之间存在差异.XHTML更严格.

虽然旧的常规HTML并未对所有标记强制执行,但XHTML中的所有标记必须具有结束标记**才能进行验证.偶数<br><img>经常写作<br /><img ... />专门给他们结束标签.

XHTML还引入了其他要求,例如:

  • 所有标签必须小写
  • 必须在属性上使用引号

有关更多信息,请参阅HTML到XHTML

  • 你纠正后改变了你的"目标".无论如何,这个问题都没有提及XHTML. (3认同)
  • @ user2736012抱歉没有我想要的那么快.你知道,西方最快的枪.我的目标始终是将HTML与XHTML分开.即使问题没有提到XHTML,它仍然被认为是比HTML更好的做法. (3认同)