Quizá esto te ayude:
http://jsfiddle.net/ujrxywsj/
Código CSS:
Ver originalbody {
font-family:Verdana, Arial;
/*margin:0;*/
}
.contenedor_general {
max-width:400px;
padding-top:42px; /* Cambia este valor y comprueba el resultado */
padding-bottom:100px;
background:#CCC;
}
.test {
max-width:400px;
padding-top:20px;
padding-bottom:20px;
background:#999;
text-align:center;
}
Código Javascript
:
Ver originalvar test = $(".test");
var offset = test.offset();
var tope = offset.top;
$("#resultado").html('Distancia desde el tope: '+tope+'px');
En el CSS verás que hay un comentario respecto al margen del cuerpo, y es que los JSFIDDLE automáticamente añaden un margen de aprox. 8 píxeles.
Pero sí, marca la distancia correcta aunque el padding sea de 42px (42 + 8 = 50).
Saludos.