html约定 - 自我关闭标记,&gt;或/ /,以其他方式为<br/>或

时间:2011-05-21 05:13:24

标签: html coding-style

从网络上学习一些教程时,我发现有很多人会将标签打开,如<link ..><img ..>。但是当我使用Netbeans编辑它们(HTML / JSP页面)时,它会在这些标签上显示红色背景,直到我将斜杠添加到它们中。 <br> - &gt; <br/>

编写基于HTML的代码的正确方法是什么?

3 个答案:

答案 0 :(得分:6)

两者都适用于HTML。虽然不适用于XML方言的XHTML。

某些元素不需要关闭(/>)标记 - 特别是空元素(没有内容的元素)。示例包括<hr><br>。这些 也可以自动关闭(分别为<hr /><br />)。这种自动关闭相当于在打开标记之后立即使用关闭标记。

对于XML,这样的非结束标记无效 - 必须关闭它,自关闭或具有结束标记。因此<hr>不是有效的XML,但<hr /><hr></hr>是。

HTML不是XML,但为了更好的兼容性,一些工具尝试尽可能多地发出像HTML一样的XML。

答案 1 :(得分:5)

这取决于您使用的DOCTYPE。如果您使用的是HTML 4,则不应使用自动关闭标记,如果XHTML则应该生成有效的XML,如果HTML 5则关闭斜杠是可选的,但不是必需的。

如果您尝试在HTML 4中使用结束标记,W3C HTML Validator将发出警告:

  

序列可以   解释至少两种不同的   方式,取决于的DOCTYPE   文献。对于HTML 4.01严格,   '/'终止标签')。但是,很多   浏览器不会这样解释,   即使存在HTML 4.01   严格的DOCTYPE,最好避免它   完全在纯HTML文档和   仅保留其用途   用XHTML编写。

答案 2 :(得分:1)

>对于HTML是正确的,但对XHTML不正确。检查您的DOCTYPE。

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">

HTML strict

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

代表XHTML strict