Разрешается ли атрибут HTML aria-label быть пустой строкой? - PullRequest
2 голосов
/ 23 сентября 2019

Будут ли пустые строки игнорироваться программами чтения с экрана или мне следует избегать добавления их в элемент, если строка пуста?

Для справки: это вариант использования в реакции, в котором вы хотите по умолчанию установить пустое значениестрока, чтобы избежать проверки на неопределенность:

<input
  id={id}
  value={value}
  {...(ariaLabel ? { 'aria-label': ariaLabel } : {})}
/>

Ответы [ 2 ]

2 голосов
/ 23 сентября 2019

В документации w3 не упоминается пустое значение атрибута для aria-label.Так что, вероятно, это реализация, определенная для другого программного обеспечения для чтения с экрана.

Ссылка: https://www.w3.org/TR/wai-aria/#aria-label

2 голосов
/ 23 сентября 2019

Я не вижу в спецификации ничего о том, что должно произойти, если для aria-label задана пустая строка.Я думаю, что вы бы просто пометили его ни с чем, и, таким образом, все было бы в порядке, но я могу представить, что программа чтения с экрана полагает, что это ошибка, и отступает к чему-то другому.

Я думаю, что вы используетеaria-label неправильно, если он может быть пустым несколько раз.aria-label является просто заменой для элемента <label>.Предполагается назвать элемент ввода.Не должно быть ситуации, когда имя меняется или может быть пустым.

...