如果我在体内放置一个xmlns:f =“foo”会发生什么?

时间:2015-03-05 10:58:37

标签: html html5 xml-namespaces

假设此HTML5页面:

<!DOCTYPE html>
<html>
 <head><!-- some content --></head>
 <body>
  <div id="a" xmlns:f="http://exampleurl.jp/">
   <a href="#">test</a>
  </div>
 </body>
</html>

此问题包括以下事实:文档中未使用名称空间f,并且无法访问http://exampleurl.jp/

浏览器会不会......

  • 准备好在div #a(最好的情况)
  • 中使用该命名空间
  • 忽略名称空间定义(我可以这样做)
  • 失败,因为http://exampleurl.jp/无法访问(404)或至少不包含有效的XML命名空间定义(最坏情况)

......?

无论浏览器的实际行为如何, 的行为(根据定义)

1 个答案:

答案 0 :(得分:2)

浏览器将忽略该属性。根据{{​​3}},这种用于定义命名空间别名的XML语法(在您的示例中,使 f 为命名空间 http://www.w3.org/TR/html5/syntax.html#elements-0 的别名)不受支持

在任何情况下,名称空间URI都不必实际映射到实际网站上的任何内容。 URI可以是任何东西,因为它仅用于区分相同但位于不同名称空间的本地名称。