html - 对于我们只知道它是由用户上传的图像,适当的 alt 标签是什么?
问题描述
在我们的网站上,我们有一个案例展示了我们销售的产品的不同用户上传的图片列表。除了我们在页面上销售的产品之外,我们没有任何关于图像是什么的上下文。以下是我们讨论过的各种选项:
- 空的 alt 标签
alt=""
。屏幕阅读器什么都不会读。 - Alt 标签说它是用户上传
alt="customer uploaded content"
的。这将对每个图像重复相同的事情。 - 与 (2) 相同,但为图像提供索引以显示它们的数量
alt='${index} customer uploaded content'
。 - 完全省略 alt 属性。
在这种特定情况下,我不太关心 SEO,而不是可访问性。我不确定最佳做法是什么,如果让屏幕阅读器读出重复的内容可能会很糟糕。
解决方案
该规范包含有关此内容的详尽信息,包括一个部分当在发布时文本替代不可用时:
在某些情况下,图像包含在已发布的文档中,但作者无法提供适当的替代文本。在这种情况下,最低要求是在以下条件下使用 figure 和 figcaption 元素为图像提供标题
(剪断)
在此示例中,作为批量上传许多图像的一部分,一个人将照片上传到照片共享站点。用户没有为图像提供替代文本或标题。该网站的创作工具会使用它对图像的任何有用信息自动插入标题。在这种情况下,它是文件名和拍摄照片的日期。
<figure> <img src="clara.jpg"> <figcaption>clara.jpg, taken on 12/11/2010.</figcaption> </figure>
在这种特定情况下,我不太关心 SEO,而不是可访问性。我不确定最佳做法是什么,如果让屏幕阅读器读出重复的内容可能会很糟糕。
让屏幕阅读器用户可以轻松跳过该部分。利用<section>
元素<h1>
和朋友。这样,当他们收到“部分:客户照片”的公告时,他们可以跳到下一个标题。
推荐阅读
- c++ - 插入地图
- apache-spark - Spark + AWS S3 将 JSON 读取为数据框
- php - 使用 php 的 Google 日历不显示共享日历列表
- java - Java HashSet 的哈希码唯一性
及其子集 - laravel - 如何在电子邮件 laravel 通知按钮中修复正确的 url?
- java - SpringBoot Application启动后启动@RabbitListener
- unit-testing - 使模拟实现记录任意数量的参数
- android - 同时运行多个测试时测试失败
- java - 从 Mysql 中检索和显示 JSP 中的数据
- mongodb - 仅从 Pojo 将非空字段更新到 Mongodb