The HTMLElement.offsetParent read-only property returns a reference to the element which is the closest (nearest in the containment hierarchy) positioned ancestor element. If there is no positioned ancestor element, the nearest ancestor td, th, table will be returned, or the body if there are no ancestor table elements either.

Note: offsetParent returns null in the following situations:

  • The element or its parent element has the display property set to none.
  • The element has the position property set to fixed (firefox returns <body>).
  • The element is <body> or <html>.

offsetParent is useful because offsetTop and offsetLeft are relative to its padding edge.


parentObj = element.offsetParent;
  • parentObj is an object reference to the element in which the current element is offset.


CSSOM View Module (CSSOM View)
# dom-htmlelement-offsetparent

Browser compatibility

BCD tables only load in the browser