Propriété offsetParent

La propriété offsetParent contient le parent le plus proche par rapport auquel le positionnement de l'élément se produit. Ce sera soit le parent le plus proche dont la propriété CSS position n'est pas égale à static, soit la balise body, s'il n'y a pas de parent avec un tel positionnement.

Syntaxe

javascriptélément.offsetParent;

Exemple

Trouvons l'élément parent avec la propriété position différente de static :

html<div id="parent3">
  <div id="parent2" style="position: relative">
    <div id="parent1">
      <p id="elem">texte</p>
    </div>
  </div>
</div>
javascriptlet elem = document.querySelector('#elem');
console.log(elem.offsetParent.id);

Résultat de l'exécution du code :

javascript'parent2'

Exemple

Si les éléments parents n'ont pas de positionnement, alors offsetParent contient body :

html<div>
  <p id="elem">texte</p>
</div>
javascriptlet elem = document.querySelector('#elem');
console.log(elem.offsetParent.tagName);

Résultat de l'exécution du code :

javascript'BODY'

Voir aussi

  • propriété offsetParent,
    qui contient le parent avec positionnement
  • propriété offsetTop,
    qui contient le décalage de l'élément depuis le haut
  • propriété offsetLeft,
    qui contient le décalage de l'élément depuis la gauche
  • méthode getBoundingClientRect,
    qui trouve le décalage de l'élément