Hola super_rayo!!
Para que se ajuste al contenido del div tienes que asignarle el atributo position: absolute.
Y después si quieres que esté centrado el position: absolute no te sirve porque te posiciona el div lo más arriba a la izquierda posible, como si fuera un eje de coordenadas empezando por arriba, en el eje (0, 0).
Entonces para centrarlo tienes que poner el position: relative (el position: relative está asignado y no hace falta que lo escribas) y para que esté bien centrado la única manera es asignándole al div la misma anchura que la de la imagen. Después hay que asignarle un par más de atributos al div y al body. Te lo dejo aquí:
Suponiendo que la imagen es de 200x200:
Código HTML:
Ver originalbody
{
margin: 0 auto;
text-align: center;
}
#divimagen
{
margin: 0 auto;
text-align: left;
width: 200px;
}
Saludos!