Es curioso pero me pensaba que el orden de los factores no alteraba el producto, pero se ve que si.
Tu código esta bien, el problema esta en el orden.
He probado con tu código tal cual.
Código CSS:
Ver originalul#nav li a:link {
color: #999;
}
ul#nav li a:hover {
color: #ffffff;
}
ul#nav li a:visited {
color: #999;
}
ul#nav li a:active {
color: #ffffff;
}
Resultado: Antes de pulsar el link todo va perfecto, una vez pulsado el color declarado en el
a:visited queda por encima dejando inutilizado el
a:hover.
Un cambio de orden de tu mismo código.
Código CSS:
Ver originalul#nav li a:link {
color: #999;
}
ul#nav li a:visited {
color: #999;
}
ul#nav li a:hover {
color: #ffffff;
}
ul#nav li a:active {
color: #ffffff;
}
Resultado: Antes y después de pulsar el link el
a:hover funcionan perfectamente.
Mi conclusión es que el explorador lee el código de una forma lineal por lo que el problema estaba en que una vez pulsado el link no había propiedad
a:hover porque estaba encima así que no cambiaba el color.