我应该为屏幕阅读器标记代码示例 <code> 还是只读的 <textarea>?

Should I mark-up code examples with <code> or a read-only <textarea> for screen readers?

我有一个包含多个 HTML 代码示例的页面。 screen-reader 用户会因为这样看到它们而受益吗:

<textarea readonly="true">CODE EXAMPLE HERE</textarea>

或者我应该这样做:

<code>CODE EXAMPLE HERE</code>

我认为 <textarea> 可能比 <code> 更容易复制粘贴,但我想听听您的体验。

<textarea> 元素供用户输入。 readonly 被设计为 用于用户输入但可能由于某种原因被冻结的东西的临时状态。

使用<code>(可能结合<pre>)。

使用<code> 是正确的解决方案。如果有合适的 HTML 标签用于某个目的,请使用它。浏览器和屏幕 reader 会将其转换为对用户有用的信息。只有在没有 HTML 解决方案可用时才应使用 W3C 规定的 ARIA。 ARIA 会强制执行一种行为。这通常用于 div 标签,这些标签本身没有语义,用 ARIA 角色和属性武装它们可以使它们表现得像视觉上暗示的那样。