static
static é o valor por defeito. Um elemento com position: static; não é posicionado de uma forma qualquer. Diz-se que um elemento estático está não posicionado e um elemento com a sua posição com outro valor qualquer diz-se posicionado.
relative
relative comporta-se igual a static a não ser que adiciones algumas propriedades extra.
Atribuindo as propriedades top, right, bottom, e left de um elemento relativamente posicionado irá fazer com que seja ajustado para longe da sua posição normal. Outro conteúdo não será ajustado para caber dentro de algum espaço que sobre do elemento.
fixed
Um elemento fixo é posicionado relativamente ao viewport, significa que fica sempre no mesmo sitio, mesmo que faça scroll da página. Com relative, são utilizadas as propriedades top, right, bottom, e left.
absolute
absolute é o valor de posicionamento mais complicado. absolute comporta-se como fixed só que relativo ao posicionamento do antecessor mais próximo em vez de relativo ao viewport. Se um elemento positionado absolutamente não tem um antecessor posicionado, utiliza o corpo do documento, e continua a mover-se igualmente com o scroll da página. Lembra-te, um elemtno "posicionado" é aquele em que a posição é tudo excepto static.