JAWS / Web-Aim有没有办法将文本指定为"时间"对于屏幕阅读器?

时间:2015-05-28 12:35:15

标签: html accessibility wai-aria jaws-screen-reader

如果JAWS在我的页面中遇到这样的时间:

<div>
  <span>20:15</span> <!-- either of these times -->
  <span>04:15</span> <!-- either of these times -->
</div>

然后它将它们读作&#34;二十个冒号十五&#34;这听起来不像时间。有没有办法指明这是一个时间?

也许将普通用户读取但未被看到的文字放入&#34;二十个冒号十五点钟&#34;或某事可能是一个可行的答案。

2 个答案:

答案 0 :(得分:4)

  

有没有办法指明这是时间?

HTML5提供time element及其datetime attribute

我无法测试JAWS是否认出它,但如果没有,那就太遗憾了(他们当然应该解决这个问题)。

对于时间“20:15”,标记可以是:

<time>20:15</time> 
<!-- because "20:15" is a valid time string -->

<time datetime="20:15">20:15</time>
<!-- the datetime attribute is not needed here -->

<time datetime="20:15">…</time>
<!-- could have any content, as long as the datetime attribute contains a valid time string -->

答案 1 :(得分:1)

从语义上讲,您应该使用带有title属性的public void GetMuscles(List<ListItem> selected) { int[] arrayOfStrings = new int[selected.Count]; for (int i = 0; i < selected.Count; i++) { arrayOfStrings[i] = Convert.ToInt32(selected[i].Value); } } using (var db = new DWSEntities()) { var muscles = (from m in db.Muscles where m.MainMusleGroupID. //ISSUE select new { m.MusleName, m.ID }).Take(40); } 元素。问题是屏幕阅读器默认不会读出缩写。

要解决此问题,您可以结合使用<abbr>和屏幕外技术,例如:

aria-hidden

屏幕外:

  <span aria-hidden="true">20:15</span>
  <span class="offscreen">Twenty colon fifteen o'clock</span>

根据ARIA规范,这些技术也应该有效,但(与所有ARIA一样)你需要测试它们以确定它们是否真的在实践中起作用

.offscreen { border: 0; clip: rect(0 0 0 0); clip: rect(0, 0, 0, 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; width: 1px; position: absolute; }

<span aria-label="twenty hours and fifteen o'clock"><span aria-hidden="true">20:15</span></span>