用途:在创建或审查 HTML 数据表格时应用无障碍规则,仅在项目包含数据表格时加载。核心要求是表格只用于含义依赖行列关系的信息,绝不用作布局(布局改用 CSS Grid/Flexbox),也不要把阅读型数据表改成应用式网格(role="grid"),除非用户确实需要电子表格式键盘交互。
主要能力与规则:每个数据表必须有带 scope 的 <th>,只有 <td> 属严重问题;用 <caption> 标识表格,废弃 summary 属性;跨列表头用 scope="colgroup",跨行组用 scope="rowgroup";仅在极复杂表格中使用 headers + id,且 ID 唯一、每次结构变更后重新校验。空单元格需明确写出 0、Not applicable、No data 等含义,不用 填充。合计行用 <tfoot> 并把标签标为表头,不靠加粗或颜色表达。
交互与响应式:排序按钮放在表头内,aria-sort 只加在当前排序的 <th> 上;筛选后更新可见结果数并用 role="status";分页用 aria-current="page",说明显示范围与总数;虚拟化可能破坏查找、导航与焦点,优先分页。行选择用真实复选框/链接/按钮,可访问名称包含行标识;表内表单每个输入需唯一标签并含行列上下文;可展开行同步更新 aria-expanded、按钮文本与 hidden。响应式滚动容器可加 role="region"、aria-labelledby 与 tabindex="0",避免把表格元素改为 display: block。
限制:资料未提供安装命令、平台、收费或效果数据。复杂表头关联即使技术正确也可能难以被屏幕阅读器理解,应优先拆分或简化表格;布局表格仅作临时补救,用 role="presentation" 并保持内容线性可读。