El position:absolute también centra respecto al elemento "padre", cuando este es relative.
Ejemplo:
Código :
<head>
<style>
.contenedor {position:relative; left:4em; top:2em; width:500px; height:7em; border:red 1px solid;}
.contenido {position:absolute; left:10px; top:2px; width:400px; height:2.5em; border:blue 1px dashed;}
.flotante {position:absolute; left:1em; top:10em; border:green 1px dotted;}
</style>
</head>
<body>
<div class="contenedor">
Este div, se posiciona con "relative", a "4em,2em" del body.
<div class="contenido">
Este div no está en el "10,2" del body, sino del div contenedor.
</div>
</div>
<div class="flotante">
Este "absolute", sí que está posicionado respecto al body.
</div>
</body>
Si no lo entiendes del todo... aquí tienes el ejemplo montado.
(lo habría subido a algún alojamiento gratuito de HTML (como imageshack), pero no conozco ninguno para HTML)
Código :
<html>
<head>
<style>
.contenedor {position:relative; left:4em; top:1em; width:500px; height:7em; border:red 1px solid;}
.contenido {position:absolute; left:10px; top:2px; width:400px; height:2.5em; border:blue 1px dashed;}
.flotante {position:absolute; left:1em; top:10em; border:green 1px dotted;}
</style>
</head>
<body>
<div class="contenedor"><br /><br /><br />class="contenedor"<br />Este div, se posiciona con "relative", a "4em,2em" del body.
<div class="contenido">class="contenido"<br />Este div no está en el "10,2" del body, sino del div contenedor.</div>
</div>
<div class="flotante">
class="flotante"<br />Este "absolute", sí que está posicionado respecto al body.<br /><br /></div>
<br /><br /><br /><br /><br /><br /><br />
HTML:
<pre>
<html>
<head>
<style>
.contenedor {position:relative; left:4em; top:2em; width:500px; height:7em; border:red 1px solid;}
.contenido {position:absolute; left:10px; top:2px; width:400px; height:2.5em; border:blue 1px dashed;}
.flotante {position:absolute; left:1em; top:10em; border:green 1px dotted;}
</style>
</head>
<body>
<div class="contenedor">
Este div, se posiciona con "relative", a "4em,2em" del body.
<div class="contenido">
Este div no está en el "10,2" del body, sino del div contenedor.
</div>
</div>
<div class="flotante">
Este "absolute", sí que está posicionado respecto al body.
</div>
</body>
</html></pre>
</body>
</html>