“是什么意思?”;xmlns:v=urn:schemas microsoft com“;在HTML5中
我碰巧发现了标题中描述的“xmlns:v=urn:schemas-microsoft-com”这句话 这里是大致的来源“是什么意思?”;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
<!--[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
-MS office Open XML公共属性urn:schemas microsoft com:office: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
,因此他们将其视为一个未知的无意义标记,没有任何功能。