Pergunta

Eu tenho um <button> com um accesskey assgined a ele. O accesskey funciona bem, desde que o botão é visível, mas quando eu definir display: none ou visibility: hidden, o accesskey obras não mais.

Também tentou, sem sucesso:

  • Use um tipo de elemento diferente:., Uma entrada (vários tipos, mesmo typeless)
  • Atribuir o accesskey para um rótulo que envolve o controle invisível.

Note, eu não tenho certeza se este é o comportamento padrão, mas antes de Firefox 3 a accesskey parecia trabalhou independentemente da visibilidade.

Foi útil?

Solução

O comportamento que você está vendo é correta, você não pode "acesso" um elemento que não é exibido. A sugestão de Sal quase certamente irá funcionar, mas posso perguntar o que sua finalidade é em fazer isso? Não é provavelmente a melhor maneira de realizar o que você está tentando alcançar. Você já pensou em usar um manipulador de pressionamento de tecla?

Eu acho que você provavelmente vai querer ir com as outras sugestões, se você não quer um manipulador de pressionamento de tecla. posição Tente: absolute; esquerda: -9999px; para puxar o seu conteúdo para fora da página. Ou usar a posição absoluta, mudança de opacidade para zero e z-índice a -1. Ao usar a posição absoluta do elemento não vai afetar o posicionamento de outros conteúdos na página, definindo a opacidade irá torná-lo não é visível. Mesmo com o conjunto de opacidade para zero você ainda pode clicar no elemento e que você não pode vê-lo pode impedir que você seja capaz de clicar em outros elementos da página para usar um z-índice negativo para puxá-lo para trás outros conteúdos.

Outras dicas

Você pode aplicar uma margem negativa para empurrar o elemento outsite da página visível. Eu acho que muitos browsers e leitores de texto ignora elementos com display:none e possivelmente também visibility:hidden.

Mais fácil solução:. height: 0px; margin: 0px; padding: 0px; no seu CSS

Em vez de visibilidade ou exibir atributos, a posição do botão de fora da página

<button accesskey="a" style="position: absolute; top: -9999px">button</button>

AVISO: A utilização esquerda em vez de topo faz com que um erro de exibição estranho no IE7

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top