我的同事并不真正了解或理解HTML。她的工作是将信息输入CMS,我注意到她一直关闭<hr />
这样的<hr></hr>
标签。
我有一个谷歌,但我找不到任何说不允许或可能导致问题的地方。我知道它应该是<hr />
,但值得我告诉她还是不必要但有效的标记?
NB我们网站的doctype是
XHTML 1.0 Transitional
如果这有任何区别。
修改
@Jeff对验证有个好主意。我使用了以下代码,显然这是有效的XHTML 1.0 Transitional
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
</head>
<body>
<hr></hr>
</body>
</html>
答案 0 :(得分:32)
好的,<hr></hr>
实际上也是一个有效的XHTML 1.0。
因此,对于XHTML 1.0:
<hr />
有效<hr></hr>
有效<hr>
不有效...适用于HTML 4.0:
<hr />
有效<hr></hr>
不有效<hr>
有效因此,最好的选择是使用始终有效的<hr />
。
答案 1 :(得分:10)
开始标记: 必需,结束标记: 禁止
由于XHTML基本上意味着HTML标签需要有一个结束标记,我会说<hr />
是您应该考虑的唯一格式。
正如其他人所说,<hr></hr>
是有效的XHTML(they even use it as example),但出于兼容性原因,我不会使用它。
答案 2 :(得分:3)
<hr />
只是<hr></hr>
的简写;两者都可以在XHTML文档中使用。但是,在HTML文档中都不能接受,<hr>
应该使用,而在XHTML中则无效。
答案 3 :(得分:1)
没有。 <hr />
不应该有结束标记。
HTML无效。
是有效的XML,因此从技术上讲它是有效的xhtml,但即使你使用的是xhtml,你仍然不应该使用它。
这是因为即使在呈现xhtml代码时,所有浏览器实际上都使用其HTML解析器,因此结束</hr>
标记被视为错误。有些浏览器甚至可能将其误解为额外的<hr>
元素。
唯一的跨浏览器兼容方式是<hr>
(即纯HTML)或<hr />
,如果你想拥有一个有效的xhtml文档。
答案 4 :(得分:0)
据我所知,没有结束hr
标签。标签纯粹是自我关闭,文档类型定义将反映这一点。
答案 5 :(得分:0)
由于它是一个空元素,因此打开和关闭标记是没有意义的。
但是,XML要求关闭所有标记,因此需要<hr />
形式。
我想在HTML中,而不是XML,<hr></hr>
是有效的,但不必要。
答案 6 :(得分:0)
HR元素绘制水平规则。这是一个块元素,不需要结束标记。