概述
HTML5现在允许 <svg>
在不依赖于外部命名空间的情况下使用 HTML 文档进行标记(这里<math>
有很好的概述)。两者都有自己的属性类似物(见下文),今天的屏幕阅读器软件实际上忽略了这些类似物。因此,盲人用户无法访问这些元素。alt
是否有计划为这些新元素实施标准替代文本约定?我已经搜索了文档并且已经干了!
更多详情
关于 SVG: SVG 的替代文本可以被认为是根title
或desc
标签的内容。
<svg>
<title>An image title</title>
<desc>This is the longer image description</desc>
...
</svg>
我找到了一个这样阅读它的屏幕阅读器,但这是标准吗?以前插入 SVG 的方法也存在可访问性问题,因为<object>
屏幕阅读器对标签的处理不一致。
关于 MathML: MathML 的替代文本应存储在alttext
属性中。
<math alttext="A squared plus B squared equals C squared">
...
</math>
由于屏幕阅读器似乎不承认这一点,因此数学渲染库MathJax在运行时将文本插入到aria-label
属性中。
<span aria-label="[alttext contents]">...</span>
不幸的是,NVDA、JAWS 和其他公司也不能可靠地读取这些标签。(有关WAI-ARIA 的更多信息)
关于两者:在很大程度上不受支持的 ARIA 属性缺乏成功,我尝试使用title
属性。这些似乎在这些“外来”HTML 元素上也被忽略了。
包起来
除了快速破解之外,我还在寻找在这些新 HTML 元素上放置替代文本的推荐方法。也许我忽略了一个 W3C 规范?还是现在还为时过早?