IE6 -自定义标签没有名称空间
IE6 - custom tags without namespaces
是否可以在Internet Explorer 6(是的,IE6)中使用自定义标签而不定义名称空间?
的例子:
<!-- NS is namespace -->
<html XMLNS:NS>
<head>
<style type="text/css">
NS/:myTag {
color: #666;
font-size: 20px;
}
</style>
</head>
<body>
<NS:myTag>
The quick brown fox jumps over the lazy dog
</NS:myTag>
</body>
</html>
我需要在源代码中使用没有NS:
前缀的标签。
A:是否可以在IE6中使用没有名称空间的自定义标签?
B:如果不是,我可以在给定父标记的所有标签中插入JavaScript前缀吗?
旧版本的IE要求您在样式化或解析它们之前至少使用一次自定义元素名称的createElement
;如果你扔掉你创建的元素也没关系,创建它的行为告诉IE"这是一种类型的元素"。此外,/
选择器应该是'
:
<!-- NS is namespace -->
<html XMLNS:NS>
<head>
<script>
document.createElement("NS:myTag"); // <====
</script>
<style type="text/css">
NS':myTag { /* <==== */
color: #666;
font-size: 20px;
}
</style>
</head>
<body>
<NS:myTag>
The quick brown fox jumps over the lazy dog
</NS:myTag>
</body>
</html>
上面的工作在IE6(我碰巧有一个旧的虚拟机,我保持在IE6上;谢天谢地,在这个问题出现之前,我已经几个月没有启动它了。
警告:我不是很熟悉HTML中的名称空间(从来没有需要过),所以如果上面的内容在某种程度上是幼稚的,请道歉。正如我所说,它可以在IE6(和Chrome 42)中运行。
你的评论:
我的目标是在HTML中使用
<myTag>
而不是<NS:myTag>
,因为使用命名空间我不能简单地将xml放在HTML中。
我很困惑:如果你想用<myTag>...</myTag>
,为什么问题用<NS:myTag>...</NS:myTag>
?
但是如果你只想使用<myTag>
,它工作得很好。同样在IE6中,你需要createElement
:
<!-- NS is namespace -->
<html XMLNS:NS>
<head>
<script>
document.createElement("myTag");
</script>
<style type="text/css">
myTag {
color: #666;
font-size: 20px;
}
</style>
</head>
<body>
<myTag>
The quick brown fox jumps over the lazy dog
</myTag>
</body>
</html>
相关文章:
- JavaScript名称空间和对象创建
- JSDoc:模块和名称空间之间的关系是什么
- EmberJS-适用于各种模型的适配器动态名称空间
- 如何为HTML属性/选择器创建全局名称空间或变量
- Socket.io客户端在使用名称空间时忽略端口[Bug?]
- 在javascript中,别名名称空间
- 如何在javascript模块中包含jquery而不与全局名称空间冲突
- Javascript对象/名称空间-如何访问从嵌套函数添加的属性(包括示例)
- 声明Javascript名称空间的两种方法之间的区别
- 在jQuery中选择一个具有名称空间的节点
- 获取调用属于其属性或名称空间原型之一的函数的对象
- 当名称空间在id参数之前声明时,Angular UI路由器停止工作
- 获取构造函数函数的最佳方式是在JavaScript中使用带名称空间的字符串表示
- Javascript的名称空间大小写是否有标准
- 什么是xml dom名称空间,为什么一些dom方法在它们的末尾有NS
- 将Ext.Loader配置为每个名称空间有一个文件
- 如果根元素有名称空间' xmlns ',则不工作
- 在javascript中使用名称空间有什么好处?
- Javascript - can类路径有名称空间
- 这两种方法都创建名称空间吗?还是有区别?