gpt4 book ai didi

HTML:包含或排除可选的结束标记?

转载 作者:技术小花猫 更新时间:2023-10-29 11:25:51 25 4
gpt4 key购买 nike

一些 HTML 1 结束标签是可选的,即:

</HTML>
</HEAD>
</BODY>
</P>
</DT>
</DD>
</LI>
</OPTION>
</THEAD>
</TH>
</TBODY>
</TR>
</TD>
</TFOOT>
</COLGROUP>

注意:不要与禁止包含的结束标签相混淆,即:

</IMG>
</INPUT>
</BR>
</HR>
</FRAME>
</AREA>
</BASE>
</BASEFONT>
</COL>
</ISINDEX>
</LINK>
</META>
</PARAM>

注意: xhtml 不同于 HTML。 xhtml 是 xml 的一种形式,它要求每个 元素都有一个结束标记。结束标记在 html 中可以是禁止,但在 xhtml 中可以是强制

是可选的结束标签

  • 最好包含,但如果您忘记了它们,我们会接受它们,或者
  • 理想情况下包括在内,但如果您将它们放入我们会接受

换句话说,我应该包含它们,还是包含它们?

HTML 4.01 spec talks about closing element tags being optional ,但没有说明是最好包含它们,还是最好不包含它们。

另一方面,a random article on DevGuru says :

The ending tag is optional. However, it is recommended that it be included.

我问的原因是因为您知道它出于兼容性原因是可选的;如果可以的话,他们会(强制性 | 禁止)。

换句话说:HTML 1、2、3 对这些现在可选的结束标记做了什么。 HTML 5 有什么作用? 应该做什么?

注意事项

HTML 中的某些元素禁止使用结束标记。您可能不同意这一点,但这是规范,无需争论。我问的是可选结束标签,以及目的是什么。

脚注

1HTML 4.01

最佳答案

有些情况下显式标签会有所帮助,但有时这是不必要的迂腐。

请注意,HTML 规范明确指定了何时可以省略标记,因此这并不总是错误。

例如你永远不需要</body></html> .没有人记得放 <tbody>明确地(到 XHTML 为它做出异常(exception)的程度)。

你不需要</head><body>除非你有实际搜索 <head> 的 DOM 操作脚本(那么最好明确关闭它,因为 <head> 的隐含结束规则可能会让您大吃一惊)。

如果没有 </li>,嵌套列表实际上会更好,因为这样就很难创建错误的 ul > ul树。

有效:

<ul>
<li>item
<ul>
<li>item
</ul>
</ul>

无效:

<ul>
<li>item</li>
<ul>
<li>item</li>
</ul>
</ul>

请记住,无论您是否尝试关闭所有元素,结束标签都是隐含的。放置结束标记不会自动使解析更健壮:

<p>foo <p>bar</p> baz</p>

将解析为:

<p>foo</p><p>bar</p> baz

它只能在您验证文档时提供帮助。

关于HTML:包含或排除可选的结束标记?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3008593/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com