html - 如何使用 aria-labelledby 启用可访问性?

标签 html css background-image accessibility wai-aria

我有一个带有背景图片的 CSS 类

例如:

.my_class_bg_image { 
    background: url(myPhoto.jpg) 0 0 no-repeat;
}

我想让包含这个 CSS 类的页面易于访问。

我可以用这个吗?:

<span role="img" aria-labelledby="ddd" title="This is my bg image title" class="my_class_bg_image">
  <span id="ddd">This is my text which is shown when the image cannot be loaded, 
     but it's also there and invisible and when the image load succeeds
  </span>
</span>

如果没有,我怎样才能使这样的 html 元素可访问? - 包含包含 bg 图像的 CSS 类的 html 元素

最佳答案

使用带有 ID 的 aria-labelledby 将使文本可供需要它的屏幕阅读器使用。如果你想明显地隐藏一些内容,我建议使用 Yahoo 提出的方法。将 CSS 添加到样式表后,您只需要向 HTML 添加一个类(在本例中为 sr-only)以明显地隐藏文本。

代码为:

.sr-only {
   height: 1px;
   width: 1px;
   clip: rect(1px, 1px, 1px, 1px);
   overflow: hidden;
   position: absolute;
}

这会将内容剪掉 (clip),隐藏任何溢出,并且对于不以“正确”方式呈现 clip 的浏览器,绝对定位它们以便它们从整体布局流程中走出来。

关于html - 如何使用 aria-labelledby 启用可访问性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38293611/

相关文章:

html - 空 div 标签的背景图像超链接

css - 不显示内联背景 SVG 图像

html - 将mysql插入数组内的div内

html - 使表单居中,但保持其内容对齐

php - WordPress 博客,只对当前页面使用存档?

javascript - 视频标签的 XMLHttpRequest?

javascript - 我有一个包含 HTML、JavaScript 和 CSS 的 JSFiddle。有没有一种简单的方法可以将它实现到 Dreamweaver 页面中?

html - 如何设置链接的背景颜色?

html - 响应式 header 行为异常

css - 仅当包含内容时才使用相对高度设置 div 的背景样式