我有用于演示的单选按钮,而不是实际的表单元素:
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)告诉我 - “输入字段缺少描述”还是,或者我的上面还好吗?
答案 0 :(得分:4)
这是一种完全不直观的行为。
ARIA的第二条规则:
除非你真的需要,否则不要改变原生语义。
ARIA的第四条规则:
不要在可见焦点元素上使用role =“presentation”或aria-hidden =“true”。