JAWS не читает заголовок внутри кнопки в списке заголовков (INS + F6)

У меня есть этот код, и я хочу, чтобы JAWS распознал мой h3 в своем списке заголовков (INS + F6).
Если я изменю md-button на a это будет работать, но мне все еще нужно это с помощью md-button. (также происходит с кнопкой att).
У меня была такая же проблема с NVDA, но удаление aria-label решило проблему, но не для JAWS.

<md-button>
    <div layout="row" layout-align="start center">
        <h3>
            <span>Some text</span>
        </h3>
    </div>
</md-button>

Заранее спасибо!


person kfir    schedule 13.05.2020    source источник
comment
чего вы пытаетесь достичь с помощью h3 внутри кнопки? Как и в ответе ниже, h3 недействителен в кнопке, но если вы сообщите мне, почему вы это сделали, я смогу предложить альтернативное решение.   -  person Graham Ritchie    schedule 13.05.2020
comment
У меня есть список через ng-repeat (своего рода раскрывающийся список — если бы я мог прикрепить скриншот, я бы сделал это), каждый заголовок этого списка кликабельный h3 и тем самым вы можете развернуть/свернуть этот список.   -  person kfir    schedule 13.05.2020
comment
поместите кнопку в h3, а затем измените ее стиль по мере необходимости. Это будет работать так, как ожидалось, и будет семантически правильным. В качестве альтернативы можно было бы сделать h3 кликабельным только с помощью щелчка мыши, а затем использовать визуально скрытую кнопку для программ чтения с экрана. Не забудьте использовать aria-expanded и aria-controls. Если вам нужна дополнительная информация / пример, дайте мне знать, и я сделаю это завтра для вас.   -  person Graham Ritchie    schedule 13.05.2020


Ответы (1)


В HTML недопустим заголовок внутри кнопки. Строчные элементы не могут содержать элементы блочного уровня.

Вероятно, что либо:

  • Браузер удаляет тег заголовка, оставляет пустую кнопку или
  • JAWS просто не распознает заголовок, потому что не ожидает найти его в кнопке.
person isherwood    schedule 13.05.2020