Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html xmlns属性做什么?_Html_Validation_Xhtml - Fatal编程技术网

Html xmlns属性做什么?

Html xmlns属性做什么?,html,validation,xhtml,Html,Validation,Xhtml,验证要求我设置它,但为什么?我喜欢认为我的xhtml文档中的代码正在做一些事情。来自: xmlns属性指定文档的xml命名空间 这基本上有助于避免不同xml文档之间的名称空间冲突,例如,如果开发人员混合了来自不同xml应用程序的xml文档 这方面的一个例子(同样来自W3网站): 用于定义html表的XML数据: <table> <tr> <td>Apples</td> <td>Bananas</td>

验证要求我设置它,但为什么?我喜欢认为我的xhtml文档中的代码正在做一些事情。

来自:

xmlns属性指定文档的xml命名空间

这基本上有助于避免不同xml文档之间的名称空间冲突,例如,如果开发人员混合了来自不同xml应用程序的xml文档

这方面的一个例子(同样来自W3网站):

用于定义html表的XML数据:

<table>
  <tr>
    <td>Apples</td>
    <td>Bananas</td>
  </tr>
</table>

苹果
香蕉
用于定义咖啡桌信息的XML数据

<table>
  <name>African Coffee Table</name>
  <width>80</width>
  <length>120</length>
</table>

非洲咖啡桌
80
120
这里有两个表元素,它们会产生冲突。要解决此问题,您可以添加一个名称空间来表示定义html表的信息段以及包含咖啡桌信息的信息段:

<root>

<h:table xmlns:h="http://www.w3.org/TR/html4/">
  <h:tr>
    <h:td>Apples</h:td>
    <h:td>Bananas</h:td>
  </h:tr>
</h:table>

<f:table xmlns:f="http://www.w3schools.com/furniture">
  <f:name>African Coffee Table</f:name>
  <f:width>80</f:width>
  <f:length>120</f:length>
</f:table>

苹果
香蕉
非洲咖啡桌
80
120

想象一下,我们都定义了包含标记foobar的xlm模式。你怎么区分 是否在同一文档中使用了这两个选项?答案是——我们将它们放在不同的名称空间中。这就是xmlns的用途
它类似于java软件包。

当XHTML文档通常作为text/html提供时,
xmlns
属性不起任何作用


当使用XML内容类型提供XHTML文档时,该属性指定元素的默认名称空间。在这种情况下,实际的影响是,如果省略属性,则没有任何元素具有其HTML含义–所有元素都被视为纯XML,这意味着它们没有特殊行为和默认格式,文档相当无用,根本不被视为HTML。

抱歉,水晶球需要清理。也许您可以发布一些示例XML来向我们展示您所谈论的内容?非常类似于[请不要链接到带有文本“W3标准”的W3学校页面”。请参阅。按照惯例,W3在这里并不完全正确-它没有指定文档的名称空间-它为出现它的元素及其子元素指定未固定元素的名称空间,除非这些子元素重新定义了它。并且它只有在使用XML解析器解析它时才有任何效果。W3学校不是W3C,所以不要编写标准。我对问题进行了编辑,以消除这种说法。