DOM2和DOM3 Core模块的目标是扩展DOM API,满足XML的所有需求并提供更好的错误处理和特性检测。
16.1.1 XML命名空间
XML命名空间可以实现在一个格式规范的文档中混用不同的XML语言,而不必担心元素命名冲突。
严格来讲,XML命名空间在XHTML中才支持,HTML并不支持。
因此,本节的示例使用XHTML。
命名空间是使用xmlns指定的。XHTML的命名空间是”http://www.w3.org/1999/xhtml”,应该包含在任何格式规范的XHTML页面的元素中
16.1.2 其他变化
这些变化与XML命名空间无关,主要关注DOM API的完整性与可靠性。
1.DocumentType的变化
DocumentType新增了3个属性:publicId、systemId和internalSubset。
publicId、systemId属性表示文档类型声明中有效,但无法使用DOM1 API访问的数据。
通常在网页中很少需要访问这些信息。
internalSubset用于访问文档类型声明中可能包含的额外定义
2.Document的变化
importNode(),目的是从其他文档获取一个节点并导入到新文档,以便将其插入新文档。
3.Node的变化
DOM3新增了两个用于比较节点的方法:isSameNode()和isEqualNode()。
这两个方法都接收一个节点参数,如果这个节点与参考节点相同或相等,则返回true。
节点相同,意味着引用同一个对象;
节点相等,意味着节点类型相同,拥有相等的属性(nodeName、nodeValue等),而且attributes和childNodes也相等(即同样的位置包含相等的值)
4.内嵌窗格的变化
DOM2 HTML给HTMLIFrameElement(即
16.2 样式
HTML中的样式有3种定义方式:外部样式表(通过元素)、文档样式表(使用