Necesito posicionar un <div> en forma absoluta de tal forma que se 
superponga al area de contenido de un elemento en una página HTML, pero 
estoy encontrando dificultades en hallar un mecanismo que me devuelva las 
dimensiones necesarias. Puedo calcular las coordenadas del ángulo superior 
izquierdo del elemento sumando los valores de offsetLeft y offsetTop de la 
jerarquía de elementos contenedores, pero el resultado corresponde a las 
coordenadas del borde externo del elemento. Necesito las coordenadas del 
área de contenido, excluyendo bordes y padding.

Internet Explorer  posee las propiedades clientLeft y clientTop que podrían 
ser útiles, pero por desgracia no son estándar y no han sido implementadas 
en Mozilla por ejemplo, a pesar de que este último si dispone de clientWidth 
y clientHeight. Para determinar las dimensiones del borde + padding supongo 
que podría usar algo similar a (offsetWidth - clientWidth) / 2, pero esto 
asume que el borde y el padding son iguales en cada lado del elemento, y 
esto no siempre es el caso. Los valores disponibles a partir de la propiedad 
style no pueden ser usados para realizar el cálculo ya que sus unidades no 
son siempre uniformes. Se podría tener por ejemplo un valor para el ancho 
del borde expresado como 'thick' o '1em'. Necesito un valor expresado en 
pixels.

¿Alguna sugerencia?

Saludos,

Fernando Tubio


Responder a