2011-11-06 4 views
6

Parece que en un punto en el tiempo era posible combinar múltiples pseudo-selectores. Por ejemplo, se podría hacer esto:Combinación de pseudo-selectores múltiples

a:visited:hover {color: red}

Una rápida búsqueda en Google revela múltiples ejemplos de esto en acción, here, here y here. No puedo hacer que esta característica funcione en las últimas versiones de Safari, Firefox o Chrome. ¿Alguien puede explicar por qué esta característica ha retrocedido y/o ha sido discapacitada?

Respuesta

11

La pseudoclass :visited ya no se puede usar para la mayoría del diseño en muchos navegadores modernos porque es un agujero de seguridad. Vea this link para una discusión más formal en él.

La versión corta es que si puede asignar estilos a los enlaces :visited de manera diferente, puede usar eso para determinar si las personas han visitado varios sitios y, por lo tanto, orientarlos en función del historial de su navegador. La mayoría de los navegadores modernos por lo tanto restringen fuertemente el estilo que se puede hacer en ellos.

Aún puede encadenar pseudo-detectores. Por ejemplo, a:focus:hover funciona bien para aplicar estilos solo si el elemento está enfocado AND está suspendido. Ver this link para una demostración.

+1

No creo que pueda usar múltiples pseudo selectores. Tu demostración no funciona para mí. – corysimmons

+0

Funciona bien (en Chrome, al menos); haga clic en el área de la demostración, presione la pestaña para enfocar el enlace, luego desplace el cursor para ver que se vuelva en negrita. –

Cuestiones relacionadas