Aspetta. border:0px è errato; devi usare border:none. Forse è quello che genera scompiglio.

A parte tutto, il tuo codice può essere ottimizzato di molto. Ecco come farei io:
codice:
.link { border:1px solid #000; }
.link:visited { border-color:#000; }
.link:hover, .link:active { border-color:#fff; }
.foto { border:none; }