Hola, yo usaria padding, margin o tablas.
ya que las celdas de las tablas pueden centrarse en vertical con
vertical-align:middle;
También podrias usar la propiedad display:table; aunque no es soportada por ie6 y creo aunque no estoy seguro que ie7 tamopco la soporta.
En tags de linea como p.ej. <a> o <span> te puede ser util usar la propiedad line-height:valor; para desplazar hacia arriba o hacia abajo la línea de texto.
Saludos.