【发布时间】:2016-08-24 17:15:59
【问题描述】:
我经常读到将 display:none 用于下拉菜单(如 done here)是不好的做法,因为屏幕阅读器无法访问它。
在这篇文章中:http://simplyaccessible.com/article/better-for-accessibility/ 作者指出,display:none 的 position-off-left 替代方案也有缺点,并提出以下建议以使下拉菜单键盘可访问:
选项 2:使用 display:none 并有一个 :focus 状态来匹配 :hover 使其显示:阻止并将子菜单项带到 页面,允许他们接收焦点,但仅在他们打开时 屏幕。
:focus 调整是用 JavaScript 实现的。他在http://examples.simplyaccessible.com/css-menu/option-2.php 上举了一个例子。
问题 1: 屏幕阅读器是否可以访问选项 2 中的下拉菜单?屏幕阅读器是否会阅读完整的页面,然后您可以通过标签浏览页面并且他们会读出任何链接?这是否意味着子菜单只有在用户切换时才会被屏幕阅读器读取?
问题 2: 使用 display:none 对我来说有很大的优势,我可以使用像 .slideDown() 和 .slideUp() 这样的 jQuery 函数来添加下拉菜单上有漂亮的动画效果。如果我使用 position:absolute 并隐藏左侧的子菜单,我怎样才能获得类似于 .slideDown() 和 .slideUp 的漂亮动画效果()?
【问题讨论】:
标签: html css drop-down-menu accessibility screen-readers