在图像中提供带有 link 的替代文本,link 在同一块内容中的 2 个不同位置

Provide alt text in image with link, the link is in 2 different places in the same block content

我有一个 HTML 结构,例如:

<div aria-label="User overview">
   <a ... href="profile_page.html"><img ... src="user_profile_image" /></a>
   Info about the user

   <a ... href="profile_page.html">User name</a>
   More Info about the user
</div>

两个link都去同一个地方。我是否应该在 alt 属性中添加用户名,这对屏幕 reader 用户来说太重复了?

我应该将第二个 link 移到屏幕上 reader 吗?如果这是一个解决方案,我该怎么做?


以后我会改变HTML结构,但现在我必须保留它。

  1. 删除 div 上的 aria-label。它在非交互式元素上毫无用处,或者最坏的情况会导致可访问性损坏。

  2. Images inside links 必须始终包含 alt 属性,当它们是其中唯一的内容时

完成此操作后,如果您认为这两个链接重复,您可以考虑将 aria-hidden="true" 属性添加到其中一个链接。另一种可能性是使用 javascript only 解决方案来单击图像,这将避免任何与键盘相关的问题。因为很多人使用键盘导航而不使用屏幕 reader.

你也可以考虑combining the image and the link