2016-11-04 97 views
0

屏幕阅读器不读这个div:如何让NVDA屏幕阅读器阅读咏叹调标签?

<div tabindex="7" aria-label="Here be redundant or extraneous content" > 

它应该阅读“在这里是多余的或无关的内容”

任何帮助如何解决这个问题,HTML?

+0

为了给你一个很好的答案,如果你有一个问题,如果你还没有看过,它可能会帮助我们。如果你可以提供[mcve],它可能也很有用。 – Mat

+1

不鼓励为tabindex使用正值。 –

回答

0

A div既不是地标也不是互动内容。一个aria-label将不会被屏幕阅读器读取(正确如此)。

使用脱屏技术:

<div class="sr-only"> 
Here be redundant or extraneous content 
</div> 

的CSS可能是这样的(占RTL语言太):

.SRonly { 
    position: absolute !important; 
    clip: rect(1px 1px 1px 1px); /* IE6, IE7 */ 
    clip: rect(1px, 1px, 1px, 1px); 
    top: auto; 
    left: -9999px; 
    width: 1px; 
    height: 1px; 
    overflow: hidden; 
} 

html[dir=rtl] .SRonly { 
    left: inherit; 
    left: unset; 
    right: -9999px; 
} 

There are other techniques,但它们的价值取决于你的观众和技术简介。

此外,never use a positive tabindex value。并且never use a div as interactive content(制表符意味着你的意图)。

未来,如果您提供了一个您尝试解决的挑战的示例和说明,您的问题可能会得到更多关注。