客户端表格分页组件及多数据表场景下是否应使用aria-current="page"?
关于
aria-current="page"在表格分页场景中的适用问题 1. 单页内表格分页(无页面跳转)的场景
完全适用。aria-current="page"的核心作用是在一组导航/分页控件中标识当前活跃的项,这里的“页”并不局限于浏览器的独立页面,也可以指数据分页的“页”(即表格当前显示的数据集片段)。
即使点击分页链接只是切换表格可见行、不触发页面跳转,只要该控件代表当前正在显示的数据页,就应该加上aria-current="page"。屏幕阅读器会通过这个属性明确告知用户当前处于哪一页数据,大幅提升可访问性——尤其是对于依赖辅助技术的用户,他们能快速定位当前分页位置,无需通过表格内容推断。
注意:如果分页控件用的是<button>而非<a>标签,同样可以使用aria-current="page",该属性支持所有可交互元素。
2. 同一页面包含多个数据表格的场景
依然适用,但需要注意每个表格的分页控件是独立的上下文:
- 每个表格的分页栏属于各自的控件组,只有对应表格当前选中的页码需要添加
aria-current="page" - 不同表格的分页控件之间不会互相干扰,屏幕阅读器在聚焦到某一表格的分页栏时,只会识别该组内的当前活跃项
举个简单的示例结构:
<!-- 表格A的分页 --> <div role="navigation" aria-label="表格A分页"> <button>1</button> <button aria-current="page">2</button> <button>3</button> </div> <!-- 表格B的分页 --> <div role="navigation" aria-label="表格B分页"> <button aria-current="page">1</button> <button>2</button> <button>3</button> </div>
这里两个表格的分页控件分别标注了各自的当前页,语义清晰,辅助技术能正确识别每个表格的分页状态。
内容的提问来源于stack exchange,提问作者nsquires
相关产品推荐
相关产品推荐

