HTML:是不是可以提供替代文档标题?
Posted
技术标签:
【中文标题】HTML:是不是可以提供替代文档标题?【英文标题】:HTML: is it possible to provide an alternate document title?HTML:是否可以提供替代文档标题? 【发布时间】:2020-10-10 05:47:43 【问题描述】:目标是在浏览器选项卡中显示普通文本,同时提供不可见的替代文本,帮助屏幕阅读器更好地发音。
例如,NVDA 屏幕阅读器将地理信息系统的首字母缩写词发音为“GIs”(就像士兵一样),而不是传统的“G I S”。
在下面的实验中,NVDA 没有看到任何替代方案。能做到吗?
谢谢!
<!doctype html>
<html lang="en" dir="ltr">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title aria-label="G I S aria" title="G I S title" >GIS</title>
</head>
<body>doc</body>
</html>
【问题讨论】:
和其他人一样,我不认为这是可能的,但应该是。 【参考方案1】:您不能在<title>
上使用aria-*
属性。见ARIA in HTML:
没有
role
或aria-*
属性
原答案
根据 MDN 的 <title>
元素 supports only global attributes(它们包括 aria-*
属性),但我认为大多数屏幕阅读器不支持它。
在 Firefox 中使用此(见下文)<title>
元素的辅助功能检查器查看页面在文档名称字段中显示“a”,因此 Firefox不支持备用文档标题。
…
<title aria-label="c">a</title>
…
【讨论】:
【参考方案2】:@jiwopene 指出支持对标题上的aria
不利(如果有的话)。我认为这很好地回答了你的问题。
此答案希望通过发音向您展示在给定示例中您应该做什么。它改变了“这可以做到吗?” “应该这样做吗?”在处理可访问性时,这可能是一个更重要的问题。
简答
在 99% 的情况下,您不应干扰屏幕阅读器用户的发音。
首字母缩略词和缩略语应以其完整形式在页面上介绍,然后作为整个文档中使用的首字母缩略词引入。不要忘记abbr
元素或链接到较长页面上的定义。
长答案
发音
不要担心某事是如何发音的,only ever interfere when the screen reader parses / interprets something incorrectly。即便如此,这也是值得商榷的。
处理首字母缩略词
如果有人使用屏幕阅读器,他们习惯于不寻常的发音,他们会期望以某种方式宣布首字母缩略词。
如果您决定通过“改进”发音来帮他们一个忙,您实际上可能会使您的应用程序更少易于访问。
可访问性的黄金法则是不干扰预期行为。即使您认为这种行为并不完全正确。
想象一下,我首先在您的网站上了解了地理信息系统,并期待某种发音。然后我在谷歌上搜索更多信息,首字母缩写词的发音不同,这比我认为它的发音是 G I S 更令人困惑。
如果首字母缩略词是 WCAG,发音为“WUCAG, WACAG, WCAG”,具体取决于您与谁交谈。 如果我只是添加字母 WCAG,屏幕阅读器用户会知道它们的意思,如果他们知道缩写词。
您应该如何处理首字母缩略词?
recommended way to introduce acronyms 是写完整的短语,然后写缩写版本(反之亦然)。
所以在这种情况下,您的标题应该是“地理信息系统(GIS)”。如果合适的话,我也会在它第一次出现在<body>
或<h1>
到<h6>
时这样做。
这有一个额外的好处,即为可能不知道首字母缩写词的人解释首字母缩写词。
它还解释了有认知障碍的人的首字母缩写词,这会影响他们保留首字母缩写词和信息之间关系的能力,例如 BBC 根据上下文可能意味着很多东西!
如果您无法理解上下文,那可能会非常混乱。
然后由您决定是使用link to a definition of the word 还是在文档的其余部分使用<abbr>
元素。
我个人认为如果文档很长,您应该使用链接或<abbr>
元素,如果它很短,那么在文档开头引入缩写一次就足够了。但这是我的意见,对此没有硬性规定。
【讨论】:
感谢您提供大图和非常有用的链接。我的特别目标是让品牌名称“ArcGIS”——发音为“Arc G I S”——更清晰。定义方法会有所帮助。以上是关于HTML:是不是可以提供替代文档标题?的主要内容,如果未能解决你的问题,请参考以下文章