在 Firefox 3.6(Firebug 控制台)中,做
$('<div style="-x-foo:bar;color:red;" />').attr("style")
结果是
"color: red;"
为什么无法识别的样式规则丢失了?
在 Firefox 3.6(Firebug 控制台)中,做
$('<div style="-x-foo:bar;color:red;" />').attr("style")
结果是
"color: red;"
为什么无法识别的样式规则丢失了?
对于浏览器应该如何处理无法识别的规则,没有定义的操作。一些浏览器可能会将它们添加到 DOM 但忽略它们,其他浏览器可能会完全删除它们。
Firefox 是删除未知规则的其中之一。
在其他浏览器中您可能会得到不同的结果。关键是它是未定义的,因此很难预测会发生什么,即使在同一浏览器的版本之间也是如此。
我想真正的问题是:您要指定的无法识别的规则是什么?您显然在这里尝试做某种聪明的把戏,我怀疑您对这个问题的答案是否会是您正在寻找的答案,以便让您的聪明把戏发挥作用。或许,如果您描述了您试图通过这条未被识别的规则实现的目标,我们可以帮助您找到实现目标的方法,尤其是在您当前的计划似乎不太可能实现的情况下。
浏览器在创建节点并设置属性值时会丢弃它无法识别的属性。
当您获得浏览器在内存中保存的内容的序列化时,它们不再存在。