html - HTML 中的 <s> 与 <del>

标签 html accessibility semantic-markup

所以我正在用 HTML 编写待办事项列表。其中一些待办事项已经完成。

<h1>TODO</h1>
<ul>
  <li>I'm still to be done</li>
  <li>I'm done</li>
</ul>

现在我想知道标记和设计这些项目的最佳方式是什么。完成后,我可以用 <s> 标记每个项目。 , which seems much more acceptable these days ,因为它“不再相关”:

<li><s>I'm done</s></li>

我可以去 <del>因为,在某种意义上,用户已经编辑了列表并将此项设置为删除(有点):

<li><del>I'm done</del></li>

我可以添加一个类来说明这个项目的含义:

<li class="todo done">I'm done</li>

或三者的某种组合。或者完全是其他东西。

我关心的是可访问性和语义 - 我希望标记能够传达“已完成”项目的含义。

这样做的最佳方法是什么?

最佳答案

两个答案都很棒。 sdel确实是语义标签,所以它有利于可访问性。不幸的是,没有浏览器在可访问性树中显示这些标签,因此屏幕阅读器无法传达有关标签的任何信息。但是您可以使用 CSS 解决它。有一个 simple blog谈论<mark>元素,它也是语义的,但不会向屏幕阅读器传达信息,但博客提供了一种解决方法。您可以使用 s 做类似的事情或 del .也就是说,使用 sdel 而且使用 CSS 为屏幕阅读器用户增加标签。

关于html - HTML 中的 <s> 与 <del>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52113995/

相关文章:

html - 站点中每个页面的替代版本是否是 WCAG 2.0 的有效方法?

javascript - mac "VoiceOver"访问模态框下方的内容

html - 画廊在 HTML5 中应该是什么元素?

html - 这个标签: <t>lorem ipsum</t>是什么意思

javascript - 我在使用 Brackets 尝试实现 css、html 时遇到问题 无法实现图像 1?

html - 将元素固定到背景大小为 : cover 的 div

javascript - 重新启动用户计算机后记住大纲

html - 粘性页脚问题 - CSS

html - 如何使 <noscript> 元素可访问?

html - 如何为可访问性和 SEO 正确注释文章/博客文章预览的内容?