Hallo,
Ich habe keine Zeit den Code durchzulesen, aber manchmal liegts an der Reihenfolge(die sollte so sein: a a:link a:visited a:hover a:active a:focus).
Nö, die Reihenfolge wird von niemandem vorgeschrieben und ich denke auch nicht, dass es da Browser gibt, die da versuchen, was anders zu raten.
Folgende Rehenfolge wäre ebenfalls richtig:
a:link
a:hover
a:visited
a:active
Das würde lediglich dazu führen, dass ein besuchter Verweis keinen :hover-Effekt mehr bekommt. Wenn das gewollt ist, spricht nichts dagegen.
mfg. Daniel