键盘(kbd)元素在可访问性方面是否有帮助?

3

我正在撰写一篇关于kbd元素的博客文章,并且作为其中的一部分,我正在尝试确定它是否有助于可访问性,例如,任何屏幕阅读器是否识别kbd元素或对其执行任何操作?

我已经尝试在Google上搜索答案,但没有找到任何结果(可能是因为实际使用这个元素的人很少?)

2个回答

5

目前在浏览器、辅助软件或其他方面似乎没有任何特殊处理 kbd 元素的证据,除了默认呈现(使用浏览器的默认等宽字体)。

很难想象有哪些软件可以对其进行处理,因为它只是表示某些文本作为用户输入呈现 - 它仅表示它,而不实际涉及任何用户交互。并且内容可以是任何东西。 用户输入通常是命令、文件名或其他“计算机”表达式,但也可以是自然语言或无意义字符串(例如密码)。


1
Jukka是正确的。我刚刚进行了一个快速测试,发现Firefox中的可访问性树并没有真正公开<kbd>元素的任何信息。唯一的区别是它被分成单独的“文本叶子”,但如果您使用<span>,则情况也是如此(因此SR没有可用的语义信息)。还确认NVDA和JAWS在有或没有<kbd>的情况下都不会以不同的方式读取它。 - UnknownDeveloper

2

如果屏幕阅读器以不同的音调/语速/等方式朗读标记为kbd的内容,那么这是有意义的(即相应地宣布)。

否则,输入什么和不输入什么就不会总是/完全清楚。

以下是一个示例,其中不清楚要键入什么:

<p><kbd>Say hi</kbd> to get an introduction.</p>
<!-- vs. -->
<p>Say <kbd>hi</kbd> to get an introduction.</p>

以下是一个例子,可能并不清楚是否需要输入任何内容:

<p>
  <kbd>kill</kbd> to kill yourself, <kbd>kill <var>name</var></kbd> to kill the player named <var>name</var>
</p>

以下是一个例子,如果/哪些标点符号需要输入以及是否需要按住键(+)不清楚:

<p>To enable god mode, press <kbd>a+v!c</kbd>.</p>
<!-- vs. -->
<p>To enable god mode, press <kbd>a+v!c.</kbd></p>
<!-- vs. -->
<p>To enable god mode, press <kbd>a</kbd>+<kbd>v!c</kbd>.</p>

如果有任何屏幕阅读器默认启用了kbd支持,这可能无法确定,因为有许多屏幕阅读器仅限于一个语言或一个国家(更不用说所有不同的版本)。

但我想大多数高级屏幕阅读器可以配置为“做任何事情”与kbd。我知道许多屏幕阅读器用户共享代码片段/配置以改善他们的体验。如果有些人还添加了对kbd的支持,我也不会感到惊讶。

除了为屏幕阅读器用户提供可访问性外,kbd当然也可以帮助其他用户。当kbd没有任何特殊样式时,我经常查看源代码以确定应输入什么。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接