A ver si he comprendido bien:
.- Tienes una imagen como link. Lo cual debería traducirse en el html en algo así:
Código HTML:
Ver original<a href="#" title="título del enlace"><img src="imagen.jpg" alt="texto alternativo" /></a>
.- Esa imagen tiene como background otra imagen colocada vía css.
---------> Ello implica que deberá tener un padding para que se vea por los lados el bg
.- Esa imagen carece de bordes en estado normal
.- Al :hover deseas que aparezca un borde a la imagen de 1px sin que ello conlleve movimiento de los elementos adyacentes (que es lo lógico).
Si mi comprensión es cierta, sólo necesita añadir al "a:hover img" un margen negativo de igual valor a la anchura del borde.
Y si tienes declarado valores para el margen del enlace (o de la imagen dentro del enlace), restarle el valor del borde.
El css quedaría algo como:
Código CSS:
Ver originala img {
background: url(imagen.jpg);
padding: 5px;
border: 0;
margin:10px;
}
a:hover img {
border: 1px solid #fe0;
margin: 9px;
}