例如,如果我们有
<html>
<head>
<title>FooBar</title>
</head>
<body></body>
</html>
如果我们document.getElementByTagName("title").TagName
,那么我们将TITLE
(大写)。虽然html标准建议用小写编写html标签。
我知道两者之间没有任何关系,但这仍然没有意义。
DOM是否应该以大写字母返回标记名称?
答案 0 :(得分:27)
从技术上讲,这是DOM Level 1:
的强制要求HTML DOM以规范的大写形式返回HTML元素的
tagName
,与源HTML文档中的大小写无关。
大写标记名称的约定可能源于遗留,当之前基于SGML开发HTML时,元素类型以大写形式声明。请参阅this section of the HTML 4.01 spec discussing SGML, HTML and its syntax,以及the HTML 4.01 Strict doctype definition。任何支持HTML的DOM实现都会效仿。
请注意,小写标记名称仅在XHTML中显式需要(但不是XML),并且通常建议作者编写小写标记以便在HTML / XHTML之间移植,以及提高可读性。但是,这个建议不会出现在规范中;它说的是标签名称仅在HTML中不区分大小写,而不是XHTML和XML。