是<input />还是<input />?

时间:2014-09-19 20:02:23

标签: html html5 input xhtml

我已经尝试过检查其他答案,但我仍然感到困惑 - 特别是在看到W3schools HTML 5参考后。

注意:<input>元素为空,它只包含属性。
在HTML中,<input>标记没有结束标记 在XHTML中,必须正确关闭<input>代码,例如此<input />

<input>还是<input />

3 个答案:

答案 0 :(得分:2)

正如您所说,HTML使用<input>并且不需要结束标记</input>

但是,XML语言不允许在不关闭标记的情况下打开标记。要指定标签不会关闭,必须添加“/”

因此XHTML(= XML + HTML)需要<input />

或者更准确地说,XHT​​ML是HTML兼容的XML

答案 1 :(得分:-1)

您在问题中已经提到的答案取决于您使用的是HTML还是XHTML。这取决于您的doctype和Content-Type HTTP标头的组合。

此时,XHTML是effectively dead,几乎每个人都在使用HTML。所以对于一个实际的答案:只需使用<input>。即使HTML浏览器通常理解这两种语法,但使用自动关闭语法也没有兼容性增益,而且无论如何它都是一两个额外的字符。

答案 2 :(得分:-1)

但是,有些元素被禁止包含任何内容。在HTML中,上述语法不能用于void元素。对于此类元素,必须省略结束标记,因为解析器会自动关闭该元素。这些被称为空元素。这些元素如:br,hr,img,link和meta(这些都知道为解锁标签)。

示例:

在XHTML中,XML语法要求规定必须使用显式结束标记(如上所述)或空元素语法使其显式化。这是通过在直角括号(&gt;)之前的开始标记的末尾插入斜杠来实现的。

示例:

作者可以选择在HTML语法中对void元素使用相同的语法。有些作者还选择在斜线前加入空格,但这不是必需的。

如果您使用Dreamweaver CS6,它将自动完成为。

要在W3C上验证您的HTML文件,请参阅:http://validator.w3.org/