使用HTML5元素/ ARIA角色的首选技术

时间:2013-02-04 17:20:13

标签: html5 semantics progressive-enhancement graceful-degradation wai-aria

所以这是我不时想到的一个小问题。大约一年或两年,我一直对使用HTML5元素的最佳方式感到好奇。

我看到的最常用的技术 - 使用标题,页脚,部分等元素,除了类和ARIA角色。将html5shiv.js用于旧版浏览器。

这更符合优雅降级而不是渐进增强。如果在旧的移动/桌面浏览器中没有启用/不提供JS,我们就无法设置仅使用HTML5元素构建的布局样式。

我见过的另一种方法是使用渐进式增强功能,并且不依赖于在旧版浏览器中启用JS以使布局正常工作。我和Josh Clark [全球Moxie]就此进行了简短的讨论。他们在m中使用了这种方法。人物杂志的版本。 http://www.people.com/people/mobile/home/他们使用HTML5元素来帮助概述文档的语义,并使用classess来设置样式。没有样式依赖于HTML5元素,如页眉,页脚,旁边,部分。

我的一个问题是,如果已经在div上设置了ARIA角色,那么在我的div / span周围分层HTML5元素是否有利于为文档标记提供更好的轮廓?除了“语义”之外,这有什么好处?

如果在用于样式的div周围添加HTML5元素,将ARIA角色从div移动到HTML5元素是否有益?我认为它会,但我希望得到更多关于这种技术的反馈。

1 个答案:

答案 0 :(得分:1)

HTML5规范大大提高了概述算法的自动化程度,因此浏览器和屏幕阅读器肯定会因为包含html5标签和ARIA角色而受益。

Mozilla在这个主题上制作了一个很好的文档,解决了将html5元素纳入html4文档的问题。这应该是一个很好的例子,你可以在这里交换一些div来获得更多的语义元素。在此处找到:https://developer.mozilla.org/en-US/docs/HTML/Sections_and_Outlines_of_an_HTML5_document

话虽如此,HTML5的新语义元素确实捕获了很多div的区域,但是当没有其他适合您目的的语义上适当的元素时,仍应使用div。 html5 Doctor也大大扩展了这一点。在此处找到:http://html5doctor.com/you-can-still-use-div/