我想将WAI-ARIAaria-hidden支持与 jQuery 的 .toggle() 方法结合起来。
所以给出 <p id="myElement">Hi there</p>
$('#myElement').toggle()将隐藏元素,并设置aria-hidden="true":
<p id="myElement" style="display: none;" aria-hidden="true">Hi there</p>
$('#myElement').toggle()再次执行相同的脚本将显示(切换)元素,并设置(切换)aria-hidden="false":
<p id="myElement" style="display: block" aria-hidden="false">Hi there</p>
我可能想使用该方法的完整功能,也许类似于
$('#myElement').toggle(
if ($this.css('display')==='none'){
$this.prop('aria-hidden', 'true')
}
else
{
$this.prop('aria-hidden', 'false')
}
)
Run Code Online (Sandbox Code Playgroud)
扩展.toggle()以切换aria-hidden状态的最佳解决方案是什么?
我正在查看一些代码,其中一个标签具有属性aria-owns, 和aria-expanded. 我用谷歌搜索他们,但没有找到足够的细节来完全理解他们的工作。
有人可以解释这些特定属性的用途吗?我对 aria 属性的作用有一个大致的了解(我已经使用过aria-labelledby)?
我在 W3C 验证中收到此错误。我正在使用 HTML5 文档类型<!DOCTYPE html>
元素导航上属性角色的错误值分页。
为了
<nav class="pagination" role="pagination">
Run Code Online (Sandbox Code Playgroud)
有谁知道如何解决这个问题或这背后的原因是什么?W3V 验证器不支持 ARIA 吗?
在下面的标记中,我在<main>元素周围有一个包装器,用于展示目的。
<div id="main-wrapper" role="presentation">
<main id="main" role="main">
<h1>Title</h1>
<p>Lorem ipsum, dolor sit amet.</p>
</main>
</div>
Run Code Online (Sandbox Code Playgroud)
但是我不确定ARIA 角色是否由后代继承。如果<main>元素被视为展示性的,因为它周围的包装器具有role="presentation".
此处是否正确使用了 ARIA 角色?ARIA 角色是如何继承的?
我们需要布局大量的数据。一个简单的表可以很好地工作,但我们正在使其完全响应,因此对于简单的字段/值对,我们试图避免对表标记过于疯狂,以使回流更容易一些。
过去,我会首先使用定义列表:
<dl>
<dt>Label</dt>
<dd>Value</dd>
</dl>
Run Code Online (Sandbox Code Playgroud)
但是……它们也有缺点……也就是说,屏幕阅读器等并不总是能识别此标记的语义值,因此经常不受欢迎。
在语义和可访问性(以及 HTML5)方面,是否有一组特定的 ARIA 属性可以使它变得更好?
如果是这样,我应该使用哪些?我在网上找到的示例通常用于 a) 标签/字段对或 b) 将 ARIA 标签用于不可见标签。两者都不适合这种情况。
这是我认为我们需要的:
<div class="datawrapper">
<div class="label" **some-ARIA-attribute-to-attach-this-to**="value1">Label</div>
<div class="value" id="value1">Value</div>
</div>
Run Code Online (Sandbox Code Playgroud)
是否有专门为此设计的 ARIA 属性?ARIA 是否有更好的解决方案来使其易于访问?
我们正在努力使我们的响应式站点之一更易于访问,但我们正在努力了解 ARIA,因为它似乎违背了将设计元素与 HTML 分离的核心原则。
例如,如果一个元素隐藏在 aria 中,则将其表示为 aria-hidden="true"。然而,大多数可见性是由媒体查询决定的,具体取决于屏幕大小等。
在其他情况下,元素的工作方式与媒体查询完全不同。因此,在某些尺寸下 aria-haspopup="true" 将是合适的,而在其他分辨率下,导航始终可见。
我是否遗漏了什么,或者我们是否再次使用此标准进行字体标签?我们是否应该适当地使用 javascript 添加/删除 aria 标签?
想象一下,我有一个<div>with aria-labelas “Read this”(aria-label在运行时添加)。在里面<div>,我有一个<span>带有文字“不要阅读这个”的文字。
现在大白鲨正在做的是,它同时读取文本(“阅读这个”和“不阅读这个”)。
<div aria-label="Read this">
<span>Do not read this</span>
</div>
Run Code Online (Sandbox Code Playgroud)
期望是只阅读“阅读此内容”。反正有没有限制屏幕阅读器强制停止阅读文本?
html accessibility screen-readers wai-aria jaws-screen-reader
我正在使用WAVE(Web 可访问性评估工具)Chrome 扩展程序测试我的应用程序,并且我的<noscript>元素收到警告。具体来说,警告告诉我:“确保脚本化的内容是可访问的。内容将呈现给极少数用户,但如果使用,则必须是可访问的。”
现在,我一直在努力寻找可行的解决方案(尝试使用aria-hidden="true"),但似乎无法找到确定的解决方案。任何的想法?
编辑:我的<noscript>元素仅包含一串文本:“您需要启用 JavaScript 才能运行此应用程序。”
谢谢!
我有以下标题
<h1>ADD MONEY</h1>
Run Code Online (Sandbox Code Playgroud)
它被 VoiceOver 读为
加钱
而如果我将文本更改为小写,它将正确读取为“加钱”。你有什么建议吗?我已经尝试过使用aria-labelledby没有运气!
我正在处理一个相对较长的网页(4 页以上)。为了便于使用,我在页面底部添加了返回顶部链接。
我想知道,是否可以使用 aria-hidden="true" 和 tabindex="-1" 从屏幕阅读器或辅助工具中跳过此链接。这是否不符合可访问性标准?
由于返回顶部箭头在页面底部可见,是否有必要让屏幕阅读器用户可以使用此链接?到目前为止,我的理解是home键作为键盘/屏幕阅读器用户的返回顶部。
任何建议都会非常有帮助。