用途:该规则用于检查 <html> 元素上的 lang 与 xml:lang 属性是否一致,属于无障碍(可访问性)检查项,关联 WCAG 2.1 SC 3.1.1(页面语言)。屏幕阅读器依据 lang 选择语音与发音引擎;若 lang 与 xml:lang 不一致,基于 XML 的处理器(如部分 EPUB 阅读器和较旧的辅助技术)可能采用 xml:lang,导致文本以错误语言朗读,例如法语文本用英语语音配置读出,对法语盲人用户不可理解。
主要能力与检查方式:检查 <html> 元素是否同时存在 lang 和 xml:lang;若两者都存在,验证取值完全相同,包括子标签(en 与 en-US 视为不一致);同时验证取值是有效的 BCP 47 语言代码(如 en、en-US、fr、zh-Hant)。任何差异都应标记。
修复方式:若两者存在但不一致,将二者更新为与文档主要内容主语言一致且相同的有效 BCP 47 代码。若为标准 HTML5 文档(以 text/html 提供),移除 xml:lang,因为它多余。若为 XHTML 或 polyglot 文档(需同时作为 HTML 和 XML 解析),保留两者并确保完全一致。
适用场景与限制:xml:lang 仅在 XHTML 或 polyglot 文档中需要;标准 HTML5 文档只需 lang。资料未提供具体代码示例、框架特定指导、安装命令或工具集成方式,完整实现细节需参见 references/rule.md 与规则页面。资料未说明收费、平台或效果信息。