如何使用ARIA标记单选按钮进行演示?

时间:2017-07-04 15:58:03

标签: html accessibility wai-aria

我有用于演示的单选按钮,而不是实际的表单元素:

CSS

input[type='radio']:checked + a {
    background: #ccc;
}

HTML

<fieldset>
    <input type="radio" role="presentation" name="suggestion" id="suggestions_arts centre" value="arts centre" aria-hidden="true">
    <a href="search.json?query=arts centre" tabindex="0"><span class="show-for-sr">Search for: </span><span style="font-weight: bold;">arts</span> centre</a>
    <input type="radio" role="presentation" name="suggestion" id="suggestions_arts" value="arts" aria-hidden="true">
    <a href="search.json?query=arts" tabindex="0"><span class="show-for-sr">Search for: </span><span style="font-weight: bold;">arts</span></a>
    ...

这让我允许用户使用箭头键循环浏览我想要的链接。我知道这不是单选按钮的用途,但也不是用于导航的列表,但它现在几乎无处不在,如果我可以借助一些内置浏览器的行为,它可以节省使用JavaScript过度复杂的页面。

无论如何,我如何使用ARIA来标记广播/链接,以便筛选读者的目的是什么,因为我的chrome插件(SiteImprove)告诉我 - “输入字段缺少描述”还是,或者我的上面还好吗?

1 个答案:

答案 0 :(得分:4)

这是一种完全不直观的行为。

ARIA的第二条规则:

  

除非你真的需要,否则不要改变原生语义。

ARIA的第四条规则:

  

不要在可见焦点元素上使用role =“presentation”或aria-hidden =“true”。