Muchas gracias m0rk!
En parte me ha servido para coger la idea de padding porque tal y como me indicas no funciona bien, al final he hecho lo siguiente:
#opciones {
background-color: #99CCFF;
margin: 0 auto;
max-width: 30em;
min-height: 130px;
padding: 15px;
}
#opciones ul {
list-style-type:none; /*con esto quitamos las viñetas*/
display: inline-table;
padding-left: 40px;
}
#opciones li {
display: inline-table;
text-align: center;
padding-left: 40px;
}
#opciones a {
display: block;
padding-top: 130px;
width: 130px;
font-size: 16px;
}
#opciones .primero a {
background: url("URL") top no-repeat;
}
#opciones .segundo a {
background: url("URL") top no-repeat;
}
Ahora el efecto es el que yo quiero conseguir, pero solamente en Firefox, si el usuario es de Internet Explorer las imagenes quedan desplazadas a la derecha y una encima de otra.
Así:

Opcion 1 |

Opcion 2 |
Y desplazado a la derecha :S
¿Algo que cambiar para que tambien funcione en IE?
CSS es muy útil porque simplifica el codigo HTML pero encontrar las medidas exactas en muchas ocasiones me esta siendo un tanto pesado, me dan ganas hacer todo con tablas por muy primitivo que sea xD
A ver si podeis echarme una mano con esto

Muchas gracias!