Lan*_*ard 11 html5 compatibility layout-engine custom-data-attribute
我刚开始考虑将HTML 5 api用于Rails/JQuery项目,因此我可以使用这个出色的data-属性来存储值.
我担心浏览器兼容性问题.我有两个问题(基本问题):
为了使用HTML 5,人们是否需要升级他们的浏览器?这是如何运作的?
是否有每个浏览器布局引擎支持哪些功能的最新图表,比维基百科有关比较HTML布局引擎的文章更新,这个什么时候可以使用... HTML 5页面?
例如,使用IE6的人会遇到问题吗?很多非计算机saavy的人我曾经和他们谈过想要上网的人,而他们说话的人仍在使用IE6!
如果这不是问题,并且您可以在旧浏览器上使用HTML 5,那么您如何?或者我应该看看哪些文档:)?谢谢.
更新:我将发布一些有趣的链接,因为我在下面找到它们.
FindMeByIP:"一个简单的应用程序,使用Modernizr以易于阅读的格式显示您的浏览器对CSS3和HTML5功能的支持." - CSS3和HTML5的浏览器支持
bob*_*nce 12
将HTML5视为单个实体,浏览器"支持"或"不支持"是没有用的.HTML5是:
试图将广泛存在的实践编成超出之前W3 HTML和DOM标准所涵盖的限制,例如其他浏览器复制的IE和Firefox扩展,以及每个人都认为理所当然的长期"DOM Level 0"行为但之前没有写入任何规范.
随机选择尚未广泛使用的新扩展,希望浏览器制造商能够支持.有些已经成功,已经进入所有新的浏览器; 有些已被分解成他们自己的规格(对每个人来说都更容易管理),有些是有争议的,有些人根本不关心.
IMO一直试图同时覆盖这两个基地是一个巨大的错误.我更喜欢HTML 3.2风格的"追赶"标准以及许多单独的扩展规范.但现在没有什么可以做的.
HTML5也是:
实际上:HTML5的某些部分长期以来一直在使用.有些部分可以在现代浏览器上安全使用.除IE之外,您可以在新浏览器上使用某些部分.您可以使用许多部分使用后备解决方法或"优雅降级".您可能永远无法使用某些部件.现在你必须分别学习每一个,因为在很多年里不会有HTML5中完全支持所有内容的浏览器.如果曾经.随着时间的推移逐渐添加您喜欢的额外功能,并且它们得到更多浏览器的支持; 每个人都会立刻更新浏览器,不会有"大爆炸".
至于data-属性,嗯,是的,你可以放弃使用它们,因为大多数浏览器总是允许任何旧的属性通过.这是几种HTML5扩展的典型特征,浏览器不需要明确地"支持"它以使其工作.
但是由于还有其他传递数据的方式(类,注释,脚本块等),我并不完全相信它只是为了那个功能而下降(普遍受支持,可以针对固定标准验证)HTML4/XHTML1页面.
Set*_*eth 10
您可以查看diveintohtml5.ep.io和modernizr.com.
Modernizr是一个小而简单的JavaScript库,可帮助您利用新兴的Web技术(CSS3,HTML 5),同时仍然保持对可能尚不支持这些新技术的旧浏览器的良好控制.
这是html功能支持的交互式图表:http: //a.deveria.com/caniuse/
如您所见,有很多浏览器支持相当多的H5功能.
小智 5
如果您正在使用jQuery,关注互操作性,并且您调查HTML5的唯一原因是使用data-*属性集,那么我会考虑切换回更好支持的doctype并使用jQuery的$().data()方法,它允许您任意绑定DOM节点的数据片段,与data-属性集的工作方式类似.
例:
<button id="set">Click me!</button>
$('button#set').click(function(){
if($(this).data('name')){
alert('Clickin\' again so soon, ' + $(this).data('name') + '?');
}else{
$(this).data('name', prompt('Hey good lookin\', what\'s your name?', ''));
}
});
Run Code Online (Sandbox Code Playgroud)
试一试!