屏幕阅读器不会读取特殊字符



屏幕阅读器不会读取 HTML 文件的以下内容。NVDA读取文本直到"由屏幕阅读器读取",然后它只读取&(和)=(等于)<(更少)>(更大),而不是任何其他特殊字符。

<p>
 I want these characters to be read by the Screen Reader "&=`"<>[]-". 
</p>

使用这种用于表情符号的技术: http://tink.uk/accessible-emoji/

不过,这些事情很容易解决。我们需要告诉浏览器将表情符号(或其容器)公开为图像,然后为其提供一个可访问的名称。

使用 ARIA img角色在辅助功能树中将 作为图像公开:

<span role="img">&#9731;</span>

然后使用 aria-label 属性为表情符号提供一个可访问的名称:

<span role="img" aria-label="Snowman">&#9731;</span>

[...]

现在,浏览器会将表情符号显示为辅助功能树中的图像,并使用 aria-label 属性的值作为其辅助名称。当屏幕阅读器查询辅助功能树时,它将使用此信息告诉用户页面上有雪人 (☃) 的图像。

你必须给它一个角色,否则aria-label将不会公布。