2014-02-17 46 views
8

是否可以使用aria-hidden="true"aria-hidden="false"来嵌套元素?隐藏的咏叹调隐藏

例如:

<div aria-hidden="true"> 
    some hidden content 
    <div aria-hidden="false"> 
     some visible content 
    </div> 
</div> 

这似乎不是为我工作。我使用NVDA及其功能对其进行了测试,以在页面上显示完整链接列表。如果我将隐藏在身体上的咏叹调置于真实的位置,即使我开始将某些儿童元素隐藏起来以使错误隐藏起来,我也无法获得任何链接。目前看起来我不能覆盖子元素中的咏叹调隐藏状态。

我知道这可能是一个非常不寻常的方法,但问题本身也是不寻常的。一个巨大的灯箱,其中包含整个网站本身(没有简单的模式对话框要短)。

回答

9

不,这是不可能的。 您可以隐藏元素及其子元素。

作为一个例子,创建一个模式窗口,当你隐藏一切,但语气,就像这样:

<div aria-hidden="true" id="page-wrap"> 
    <main role="main"> 
    <p>content</p> 
    </main> 
</div> 
<div aria-hidden="false" id="myModal" aria-labelledby="myModal-title"> 
    <h1 id="myModal-title">Sign up!</h1> 
    ... 
</div> 

这一操作将隐藏#页面包装和展示#myModal到辅助技术

+0

感谢您的答复,我几乎怀疑这一点 – Playerwtf