Angular Material 中日期选择器的 A11yLabel 是什么?

2024-01-11

什么是日期A11y标签月年A11y标签为日期选择器配置自定义格式时?他们在做什么?我在 Angular Material 文档中没有找到此信息。

export const MY_FORMATS = {
  parse: {
    dateInput: 'LL',
  },
  display: {
    dateInput: 'LL',
    monthYearLabel: 'MMM YYYY',
    dateA11yLabel: 'LL',
    monthYearA11yLabel: 'MMMM YYYY',
  },
};

https://material.angular.io/components/datepicker/overview#customizing-the-parse-and-display-formats https://material.angular.io/components/datepicker/overview#customizing-the-parse-and-display-formats


日期输入:用于显示输入中选定日期的格式。

月年标签:日期选择器顶部的“更改月/年”按钮使用的格式。

日期A11y标签:使用箭头键在日期选择器日历视图中逐日移动时,屏幕阅读器读取的内容。

例如,当关注 8/16/21 时,与其只读取“16”,不如将其读取为“2021 年 8 月 16 日”,这样用户就有更多上下文,尤其是当他们从一个月份过渡到另一个月份时。

月年A11y标签:使用键盘选择月份时屏幕阅读器会读取什么内容。

要进行测试,请在日期选择器触发按钮(日历图标)上按 Enter 键,按 Tab 键移动到“更改年份”按钮,按 Enter 键,按箭头指向年份,按 Enter 键,按箭头更改月份。与其像屏幕上显示的那样只阅读“Aug”,不如阅读“2021 年 8 月”之类的内容可能会更好


例如,这些是我正在使用的值(使用Luxon https://moment.github.io/luxon/#/formatting?id=table-of-tokens格式)

display: {
    dateInput: 'DD',  //e.g. "Aug 16, 2021" for en-US
    monthYearLabel: 'LLL yyyy',  //e.g. "Aug 2021" for en-US
    dateA11yLabel: 'DDD',  //e.g. "August 16, 2021" for en-US
    monthYearA11yLabel: 'LLLL yyyy',  //e.g. "August 2021" for en-US
  },

如果您需要屏幕阅读器进行测试,NVDA 是一个很好的免费阅读器,或者您可以尝试内置的阅读器,例如 Safari 中的 VoiceOver。

我没有这方面的官方来源,但我有一些可访问性经验,只是通过摆弄它来解决它。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Angular Material 中日期选择器的 A11yLabel 是什么? 的相关文章

随机推荐