有没有办法让屏幕阅读器不读取 HTML 元素的类型?
Is there a way for screen readers to NOT read type of HTML element?
如标题所述,我想知道是否有可以添加到元素的 HTML 属性,这样屏幕 reader 就不会读取元素的类型,例如对于
<h4>Subtitle</h4>
屏幕 reader 会显示“副标题。标题 4”
感谢任何反馈。谢谢!
是的,你可以这样做,但我会提醒你不要这样做。
您可以使用开发人员 role="presentation"
or role="none"
. They do the same thing and are interchangeable. The original ARIA spec just had "presentation" but there was some confusion 了解“演示”的含义,因此规范添加了“none”作为“演示”的别名。
<h4 role="presentation">Subtitle</h4>
添加 role="presentation"
类似于拥有
<div>Subtitle</div>
您失去了使用 <h4>
的所有语义优势。屏幕 reader 用户将无法使用 H 或 4 屏幕 reader 键盘快捷键导航到文本(对于 NVDA 和 JAWS)。如果他们调出一个显示页面上所有标题的对话框,他们也不会看到列出的文本。
大概代码使用 <h4>
是有原因的。这个原因只是为了获得 h4 的样式吗?如果是这样,那么我可以也许 看看使用role="presentation"
。但在这种情况下更好的解决方案是使用 <div>
并将其指向与 <h4>
用于获取样式的相同 CSS class(如果您有自定义h4 CSS class)。如果您使用 h4 的默认浏览器样式,那么使用真正的 h4 并关闭语义可能是实现该目的的最佳方式。
如标题所述,我想知道是否有可以添加到元素的 HTML 属性,这样屏幕 reader 就不会读取元素的类型,例如对于
<h4>Subtitle</h4>
屏幕 reader 会显示“副标题。标题 4”
感谢任何反馈。谢谢!
是的,你可以这样做,但我会提醒你不要这样做。
您可以使用开发人员 role="presentation"
or role="none"
. They do the same thing and are interchangeable. The original ARIA spec just had "presentation" but there was some confusion 了解“演示”的含义,因此规范添加了“none”作为“演示”的别名。
<h4 role="presentation">Subtitle</h4>
添加 role="presentation"
类似于拥有
<div>Subtitle</div>
您失去了使用 <h4>
的所有语义优势。屏幕 reader 用户将无法使用 H 或 4 屏幕 reader 键盘快捷键导航到文本(对于 NVDA 和 JAWS)。如果他们调出一个显示页面上所有标题的对话框,他们也不会看到列出的文本。
大概代码使用 <h4>
是有原因的。这个原因只是为了获得 h4 的样式吗?如果是这样,那么我可以也许 看看使用role="presentation"
。但在这种情况下更好的解决方案是使用 <div>
并将其指向与 <h4>
用于获取样式的相同 CSS class(如果您有自定义h4 CSS class)。如果您使用 h4 的默认浏览器样式,那么使用真正的 h4 并关闭语义可能是实现该目的的最佳方式。