Avançar para o conteúdo
SilktideAjuda

aria-hidden aninhado

A Silktide verifica se há conteúdo marcado como visível para dentro de um contêiner marcado como oculto para elas. O estado oculto prevalece: a marcação interna não tem efeito, e o conteúdo permanece oculto.

<!-- Problema: o parágrafo permanece oculto apesar de aria-hidden="false" -->
<div aria-hidden="true">
  <p aria-hidden="false">Conteúdo importante</p>
</div>

Por que isso é importante

Quando um elemento tem aria-hidden="true", tudo o que está dentro dele é removido da . O padrão não oferece uma maneira para que um descendente volte a ser incluído — aria-hidden="false" dentro de um contêiner oculto simplesmente não faz nada. Autores que usam esse padrão acreditam ter tornado o conteúdo interno acessível novamente. O resultado é um conteúdo que usuários que enxergam podem ver, mas que usuários de não conseguem alcançar, sem que ninguém perceba essa lacuna.

Como corrigir

  1. Reestruture a marcação para que o conteúdo que deve ser exposto não fique dentro do contêiner oculto — mova-o para fora, tornando-o irmão em vez de descendente.
  2. Se tudo dentro do contêiner realmente deve estar disponível, remova aria-hidden="true" do ancestral.
  3. Nunca dependa de aria-hidden="false" para desfazer o estado oculto de um ancestral; depois que a correção for feita, o atributo interno geralmente também poderá ser excluído.

Como a Silktide testa isso

  1. Encontra todos os elementos da página com aria-hidden="false".
  2. Percorre os ancestrais em busca de qualquer elemento com aria-hidden="true".
  3. Emite um relatório para cada elemento cujo aria-hidden="false" esteja preso dentro de um ancestral oculto.

Solução de problemas

Um script alterna o aria-hidden do ancestral

A Silktide testa a página enquanto ela é carregada. Se o estado oculto existir apenas momentaneamente, antes de um script removê-lo, a descoberta refletirá esse estado inicial — mas observe que usuários de tecnologias assistivas em conexões lentas também vivenciam esse estado, e o aria-hidden="false" aninhado continua sem efeito enquanto ele durar.

Esta verificação não emite nenhum resultado, embora eu espere descobertas

Os testes de ARIA podem ser desativados por site. Verifique as configurações avançadas do site.

Saiba mais

Última atualização

Esta página foi útil?