微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用自定义HTML属性的具体风险是什么?

这个问题在办公室变成了热烈的讨论,所以我有兴趣了解你的想法.

我们正在开发一种仅针对某些特定浏览器的网络应用程序.这些浏览器目前包括不同口味的Opera 9和Mozilla 1.7.12.在未来,我们可能还需要支持Opera 10和不同口味的WebKit.但是,我们不可能不必处理任何版本的IE.

我们的网络应用程序在其doctype中声明HTML 4.0严格.

最近,我提出了在HTML中使用自定义属性的具体问题的解决方案.我提出了一些这样的东西:

<span translationkey="someKey">...</span>

由于这是HTML 4无效的,所以我们的HTML人员并没有很好的下去,而且我们也有了一个争论.

我的问题是:使用自定义属性有什么风险?我知道该页面不会验证,但是并不是所有的浏览器都忽略了他们不知道的属性?或者可以想象,一些浏览器会改变为“怪癖模式”,并将该页面呈现为严格的HTML 4.0以外的页面

更新:

抱怨实际提出的问题.

解决方法

没有浏览器限制/风险.只有w3验证器会吠叫,但吠叫狗不咬人.

w3 spec说:

  • If a user agent encounters an attribute it does not recognize,it
    should ignore the entire attribute
    specification (i.e.,the attribute and
    its value).

IE也不会以怪异的方式呈现,有些人会想.它只会对无效/强制的doctypes做,而不是无效的属性.

但是,请记住,一些Javascript库/框架将“隐形地”添加/使用DOM树中的自定义HTML属性,例如几个jQuery插件.这样,您可能会冒犯属性的冲突,因为“巧合”使用与您自己的目的相同的名称属性.可悲的是,这通常很差甚至没有记录.

原文地址:https://www.jb51.cc/html/224730.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐