Cuando tiene algún contenido cliqueable como <a>
, <input>
o <area>
y antes de esto tiene un elemento absolutamente posicionado con un índice z más grande, existe un comportamiento incorrecto de 'clic'.
Hago clic en el área donde se encuentra el elemento que se puede hacer clic detrás del elemento frontal. En otros navegadores existe el comportamiento correcto de que el clic no pasa por el elemento frontal. Pero solo en el navegador de Android puede hacer clic en el elemento frontal y activar el elemento de atrás. Este es un error conocido y no puedes evitarlo. Incluso está en versiones más nuevas (lo pruebo en 2.3.3 en el emulador oficial de Android).¿Hay alguna solución para la falla del navegador Android con CSS-Position y áreas seleccionables?
Existen algunas soluciones alternativas que se describen en algunos foros, pero ninguna de ellas me funcionó.
- Traté de poner o un
<a>
entre la parte delantera y trasera - He intentado cambiar el DOM así que tal vez el estado de los navegadores se actualiza
- traté de tener los elementos de espalda pueden colocar así Ninguno funcionó
Tengo problemas especialmente con los elementos de área del mapa de imagen.
¿Alguien ha tenido el mismo problema y ha logrado solucionarlo? Estoy específicamente interesado en soluciones que se prueban contra mapas de imágenes.
Si se sabe que el error ocurre solo en el navegador de Android y tiene una solución para todos los demás casos, ¿puede configurar un oyente de clic en el elemento no cliqueable, leer el agente de usuario y reaccionar adecuadamente? Tal vez esto no tenga sentido, pero lo del agente de usuario podría ser útil – Maragues
@Maragues Idea interesante, pero no funcionará, porque el elemento de la parte posterior que carece del evento de clic no sabrá qué elemento de delante debería se ha hecho clic en primer lugar. – HerrSerker
si el elemento en la parte posterior siempre se coloca en la misma área, quizás podría leer las coordenadas del clic y, a través de algunos cálculos teniendo en cuenta el tamaño y la densidad de la pantalla, deducir si los clics fueron para el elemento frontal. Sé que es una solución horrible, pero puede funcionar como un movimiento desesperado. – Maragues