Avançar para o conteúdo
SilktideAjuda

Atributo accesskey

A Silktide encontra elementos que declaram um accesskey, uma forma antiga de atribuir ao elemento o seu próprio atalho de teclado. Esses atalhos estão sempre ativos e não podem ser desativados pelo visitante, o que causa mais problemas do que resolve.

Por que isso é importante

O atributo accesskey em cria um atalho de teclado de um único caractere, que é acionado sempre que a tecla é pressionada. Isso entra em conflito com a forma como muitas pessoas já usam o teclado: pessoas que usam e navegadores reservam combinações de teclas que podem se sobrepor, portanto um accesskey pode substituir silenciosamente um atalho do qual alguém depende — e a combinação de teclas que o aciona varia conforme o navegador e o sistema operacional. Pessoas que digitam usando entrada de voz ou têm pouca destreza também podem acionar o atalho acidentalmente.

O critério de sucesso 2.1.4 da (Atalhos de teclado de caracteres, nível A) exige que os atalhos de um único caractere possam ser desativados, remapeados ou acionados somente enquanto o elemento tiver . Um accesskey não atende a nenhum desses requisitos: está sempre ativado, e somente o site pode alterá-lo.

Como corrigir

  1. Remova o atributo accesskey. Ele raramente oferece valor real, e sua remoção não altera nada visível na página.
<!-- Atalho sempre ativo que pode entrar em conflito com o do usuário -->
<a href="/search" accesskey="s">Pesquisar</a>

<!-- Corrigido: um link normal, acessível com Tab como todo o resto -->
<a href="/search">Pesquisar</a>
  1. Se você realmente precisar de atalhos de teclado, implemente-os para que o visitante possa desativá-los ou remapeá-los, ou para que só se apliquem enquanto o controle relevante estiver em foco.

Como a Silktide testa isso

  1. Encontra todos os elementos no HTML da página que declaram um atributo accesskey com um valor não vazio.
  2. Relata cada um deles. Valores vazios (accesskey="") são ignorados, pois algumas bibliotecas de componentes renderizam o atributo como uma operação nula e ele não cria nenhum atalho.

Solução de problemas

Adicionamos accesskeys para melhorar a acessibilidade

Essa já foi uma recomendação comum, mas a experiência mostrou que os conflitos com atalhos do navegador e de superam o benefício, e as orientações atuais recomendam evitar o atributo. Páginas bem estruturadas, com bons cabeçalhos e regiões, atendem melhor às pessoas que usam o teclado.

Atalhos implementados em JavaScript

Esta verificação abrange apenas o atributo accesskey. Os atalhos implementados em scripts são abrangidos por Atalhos de teclado de caracteres; as duas verificações são complementares e podem aparecer na mesma página.

Saiba mais

Última atualização

Esta página foi útil?