我在这个链接上看到了html 5的自定义属性功能 http://ejohn.org/blog/html-5-data-attributes/
当我使用jquery / javascript时,这看起来很完美。
我的问题,所有主流浏览器都支持HTML 5吗?
例如
<li class="user" data-name="John Resig" data-city="Boston"
data-lang="js" data-food="Bacon">
<b>John says:</b> <span>Hello, how are you?</span>
</li>
答案 0 :(得分:8)
不同浏览器支持HTML5的各个部分,用于“支持”的各种定义。
现在有几个部分可靠地工作。您在问题中询问的data- *属性在每个浏览器中都能正常工作,甚至IE6也是如此;但是,没有人支持有趣的“数据集”方法来访问它们。只要你用完整的attr名称抓住它们就可以了,你就是金色的。我用它们一直在我的webapps中存储状态,因为它们是官方祝福的方法。
维基百科对浏览器的各种支持级别有一个很好的总结:http://en.wikipedia.org/wiki/Comparison_of_layout_engines_(HTML_5)
答案 1 :(得分:1)
Safari 5,Firefox和Opera都支持HTML 5的部分内容,但它们不一定包含相同的部分。
根据我的经验,似乎Firefox是最先进的,但是大多数浏览器用户使用它将需要数年才能支持它。
因此,在此之前,我们将需要继续尝试在支持新功能的浏览器中使用它,并为尚未更新的用户提供变通方法,或继续使用IE。
答案 2 :(得分:1)
使用某些服务 http://caniuse.com/
例如针对您的问题 - http://caniuse.com/dataset
正如您所看到的,所有现代浏览器都支持它
此外,您可以在代码中使用http://modernizr.com/之类的内容(http://html5boilerplate.com/中已包含此内容)
PS:刚刚通知此问题太旧,但它与我之前检查过的其他一些问题有关
答案 3 :(得分:0)
HTML5甚至还没有完全支持任何浏览器,有些浏览器(尤其是IE)目前无意支持它。
答案 4 :(得分:0)
没有
维基百科页面"Comparison of layout engines (HTML 5)"很好地列出了哪些引擎实现了HTML5的哪些部分。
这些表上目前有一个 lot 的红色框,这是基于最新的开发版本,而不是大多数用户将使用的版本。
答案 5 :(得分:0)
完全支持HTML 5是一种方式但是......
创建自定义属性并不是什么新鲜事,并且可能适用于所有主流浏览器 - 但请测试以确保它适用于您的情况。
我们现在可以使用HTML 5,但不是全部。很多HTML 5都是关于形式化HTML当前使用的方式并确保向后兼容性 - 所以如果某个功能现在在浏览器中运行,请使用它。
答案 6 :(得分:0)
任何浏览器几乎都不支持完全的网络技术;没有错误,怪癖或问题。
HTML5旨在向后兼容,它几乎不会破坏您的网站(例如,以<input type=url>
为例 - 非支持浏览器显示普通文本框,Opera允许您从历史记录/书签中选择一个URL)。我会采用这种方法:开发,尝试在需要支持的浏览器中 - 如果它有效,那就太棒了。如果没有,请不要使用它。就像其他规格一样。
答案 7 :(得分:-1)
ps:无论如何,你可以使用带有数据属性的html 5,如果你需要它用于javascript目的。或选择其他一些未使用的属性(标题,缩写,......其他?)
答案 8 :(得分:-1)
截至8月25日,HTML 5仍然是一份工作草案。 http://dev.w3.org/html5/spec/Overview.html