Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.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
“是什么意思?”;xmlns:v=urn:schemas microsoft com“;在HTML5中_Xml_Html - Fatal编程技术网

“是什么意思?”;xmlns:v=urn:schemas microsoft com“;在HTML5中

“是什么意思?”;xmlns:v=urn:schemas microsoft com“;在HTML5中,xml,html,Xml,Html,我碰巧发现了标题中描述的“xmlns:v=urn:schemas-microsoft-com”这句话 这里是大致的来源 <!--[if gt IE 8]><!DOCTYPE html><!--<![endif]--> <!DOCTYPE html><!--<![endif]--> <html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-mic

我碰巧发现了标题中描述的“xmlns:v=urn:schemas-microsoft-com”这句话

这里是大致的来源

<!--[if gt IE 8]><!DOCTYPE html><!--<![endif]-->
<!DOCTYPE html><!--<![endif]-->
<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office"><br>
    <head>
        <meta http-equiv="X-UA-Compatible" content="IE=Edge">
        <meta name="viewport" content="user-scalable=0,target-densitydpi=device-dpi">
        ...
    </head>
    <body>
        ...
    </body>
</html>


... ...
据我所知,xmlns是模式,可以说是元数据。 如果某个元素在body部分可用,则该元素的元数据存在于“schemas.microsft.com”中

如果我使用“microsoft”模式开发html页面, “microsoft”将引用正文部分中使用的所有元素 或者,如果我使用其他模式,例如“google”(我不知道这是否真的存在) 所有元素都是一样的

这是我的问题 第一, 如果我同时使用“microsoft”和“google”模式中的表标记 chrome浏览器对上下文的解释会有所不同吗? 那么不同的观点又来了

第二,, 如果省略了xmlns
默认情况下将使用哪种模式?

xmlns:*属性是名称空间定义。前缀/别名为“v”或“o”的元素和属性是各自名称空间的一部分,而不是HTML的一部分。如果解析为HTML<5,名称空间将被忽略。在HTML5中,这里有一些特定名称空间的构造(SVG、MathML),但名称空间定义(xmlns:*属性)被忽略

如果解析为XML,则属性定义名称空间。您必须遵守以下定义:

  • 别名
    v
    用于
    urn:schemas microsoft com:vml
    -
  • 别名
    o
    用于
    urn:schemas microsoft com:office:office
    -MS office Open XML公共属性
XML名称空间允许混合不同的XML格式,并避免因元素名称而产生冲突

您的文件可能是由MS Office(2003)生成的,或者是用户将内容从Office复制到其中的。如果您的文档中没有以
v:
o:
开头的元素/属性,则它们不会执行任何操作


如果客户机知道名称空间/格式,它可以解释元素。不仅是浏览器,还有RSS阅读器、日历。。。如果客户端不知道名称空间,但尊重名称空间,它至少知道忽略元素/属性,即使它们的名称在HTML中可能有效。

在HTML5的
text/HTML
模式中,它没有任何意义。这是一个错误,被解释为名为
xmlns:v
的属性,它不起任何作用


在XHTML5(HTML5在
application/xhtml+xml
中)中,它与xml中的含义相同:它声明前缀
v
是由
urn:schemas microsoft com
标识的名称空间,但仅仅声明前缀并不能做任何可见的事情。

你说的是VML,向量标记语言。。。我可以从这个名字推测,它可能是一种二维表达式的标记语言。但是,我上面写的这个示例不是虚构的示例,而是特定操作系统中的真实示例。这是HTML。不是吗?我是说无知吗?我知道“xmlns:v=”urn:schemas microsoft com:vml“是MS的专有财产。所以,如果谷歌Chrome中的竞争公司不支持该名称空间,Chrome能解释这个html文档吗?”?总之,对,它运行良好。但我不知道怎么做?这是一种来自MS的旧UI标记语言。你点击过cource的链接吗?我读过。谢谢你的帮助。但我的问题不在于如何从浏览器的角度区分“微软的测试标签”和“汤姆的测试标签”。您说过浏览器在解释时不关心名称空间。但我不明白为什么它们没有关系,因为HTML是在XML和XML名称空间之前定义的。这里是XHTML——支持附加信息的HTML的XML版本。办公室还是老房子(在XML中,存在名称空间,目的是从XML解析器的角度避免可能不同的规范之间的冲突。对吗?我认为浏览器也是解析器。这也是对的吗?如果是这样,浏览器必须区分不同的规范。但你说它们不相关。我怎么能接受它?如果xmlns:v没有做任何事情ng.xmlns:v代表什么?假设我创建了一个特定的名称空间“Tom.com”。那么,如果我写下这样一个html页面。helloworld当然,Tom.com包含了“test”标记的定义。Chrome brower或Safari可以解释这一点?如何解释?test标记只是我创建的,它不符合标准语法?不是吗?@trytop有点像是这样说的“这是属于
Tom.com
”的
test
标记,但仅此而已。这取决于浏览器是否知道这意味着什么,但浏览器知道如何处理HTML、SVG和MathML,而不是
Tom.com
,因此他们将其视为一个未知的无意义标记,没有任何功能。