【发布时间】:2015-12-29 08:17:36
【问题描述】:
在响应式网站上,我有一个用于打开网站主导航菜单的小屏幕按钮。在该按钮内有一个<span>,它使用 CSS 显示一个图标。
出于设计原因,我隐藏了按钮的文本内容,但让屏幕阅读器用户可以访问:
<button class="menu-operator button">
<span class="visuallyhidden">Open menu</span>
<span class="icon"></span>
</button>
从设计的角度来看,按钮作为按钮是不可见的(没有背景颜色、边框或任何东西)。为了仍然为用户提供关于焦点的视觉线索,我正在考虑使按钮不可聚焦并将焦点转移到我可以使用 CSS :focus 设置样式的图标跨度。
所以基本上是这样的:
<button class="menu-operator button" tabindex="-1">
<span class="visuallyhidden">Open menu</span>
<span class="icon" tabindex="0"></span>
</button>
这样做是否可取?我会引入比我用这个想法解决的问题更多的问题吗?
过去我听说过有关“窃取焦点”的坏话,但在使用 OS X Voice Over 测试我的想法时,我很惊讶它的效果如何,所以我有点不确定。
【问题讨论】:
标签: html focus accessibility