2

我正在向我的网站添加 aria 角色以使其尽可能易于访问,并且我对它们进行了相当多的研究。大多数角色都很简单,除了一些我不太确定要使用什么角色的场景。

首先是一个可操作的通知项目,有一个部分全局通知将出现在我网站的一个部分的几乎每个页面中,它会说“你有 10 个苹果可供取货”,旁边的按钮说“选择上苹果”。基本思想是有一条消息和一个与之关联的动作,用户可以自由地忽略它并继续浏览。在我见过的角色中,“alert”和“alertdialog”似乎是相关的,因为它们会导致辅助技术宣布其中的内容。但是“alert”不应该需要用户输入并且会根据计时器消失,并且“alertdialog”将用户的键盘锁定为模态,直到他们做出动作。

另一种情况是节标题。我知道横幅是什么,我将其分配给我网站的顶部导航横幅,带有徽标和网站范围的导航/搜索。但是下面的标题/子导航呢?它们不是特定于页面,而是“特定于部分”,因为有多个页面与它们相关联,感觉就像一个子横幅。假设我的网站销售水果,而我有一个苹果版块。部分标题/导航应该是“主要”角色的一部分吗?我知道“导航”角色可能看起来很相关,但实际上我在较低级别进行导航,例如导航部分说“亚洲苹果/北美苹果/欧洲苹果”,而较低级别的导航说“中国苹果/日本苹果”和这样的。

提前感谢任何熟悉 ARIA 角色的人可以回答我的问题!

4

1 回答 1

1

值得将“标志性”角色与其他 ARIA 角色区分开来。

地标角色标记页面的区域,并且可以在 HTML 中使用

可以添加 ARIA 地标角色或 ARIA 标记和描述内联属性。

因此,您可以在 HTML 中标记横幅、主要、搜索、导航等。

对于其他角色,尤其是任何动态角色,您可能希望通过 JavaScript 添加它们。

根据您的描述,您的通知区域听起来是用户应该注意的,但不受其限制。(因此不要使用警报或对话框。)

我不认为有一个特定的角色,但也许要确保它是在一个人们会浏览的区域。例如,如果您有mainand h1,请在其下方包含通知区域(按源​​顺序)。

如果通知区域动态更新(没有页面加载),您可以查看aria-live通知用户而不将其从当前焦点移开。

对于部分标题,我会确保有一个h1特定于页面的标题。如果对您有意义,您可以在 ,h2上方包含一个部分标题。mainbanner

确实没有适合部分标记的角色,但如果mainandh1是特定于页面的,它应该没问题。

于 2013-11-11T16:08:06.607 回答