Pregunta

tengo un <button> con una clave de acceso asignada.La clave de acceso funciona bien siempre que el botón esté visible, pero cuando configuro display: none o visibility: hidden, la clave de acceso ya no funciona.

También lo intenté sin éxito:

  • Utilice un tipo de elemento diferente:a, entrada (varios tipos, incluso sin tipo).
  • Asigne la clave de acceso a una etiqueta que envuelve el control invisible.

Tenga en cuenta que no estoy seguro de si este es el comportamiento estándar, pero antes de Firefox 3 la clave de acceso parecía funcionar independientemente de la visibilidad.

¿Fue útil?

Solución

El comportamiento que está viendo es correcto, no puede " acceder " Un elemento que no se muestra. La sugerencia de Sal seguramente funcionará, pero ¿puedo preguntar cuál es su propósito al hacer esto? Probablemente haya una mejor manera de lograr lo que está tratando de lograr. ¿Ha considerado usar un controlador de pulsación de teclas?

Creo que probablemente quieras seguir con las otras sugerencias si no quieres un controlador de pulsación de teclas. Posición de prueba: absoluta; izquierda: -9999px; para sacar tu contenido de la página. O use la posición absoluta, cambie la opacidad a cero y el índice z a -1. Al usar position absolute, el elemento no afectará el posicionamiento de otro contenido en la página, establecer la opacidad hará que no sea visible. Incluso con la opacidad establecida en cero, aún puede hacer clic en el elemento y, aunque no puede verlo, puede impedir que pueda hacer clic en otros elementos de la página, por lo que debe usar un índice Z negativo para colocarlo detrás de otro contenido.

Otros consejos

Puede aplicar un margen negativo para empujar el elemento fuera de la página visible.Creo que muchos navegadores y lectores de texto ignoran elementos con display:none y posiblemente también visibility:hidden.

La solución más fácil: height: 0px; margin: 0px; padding: 0px; en tu CSS.

En lugar de los atributos de visibilidad o visualización, coloque el botón fuera de la página

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

Advertencia: el uso de left en lugar de top provoca un error de visualización extraño en ie7

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top