Уласцівасць offsetParent

Уласцівасць offsetParent утрымлівае бліжэйшага бацьку, адносна якога адбываецца пазіцыянаванне элемента. Гэта будзе альбо бліжэйшы бацька, у якога CSS уласцівасць position не роўна static, альбо тэг body, калі бацькі з такім пазіцыянаваннем няма.

Сінтаксіс

javascriptэлемент.offsetParent;

Прыклад

Давайце знайдзём бацькоўскі элемент з уласцівасцю position, адметнымі ад static:

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

Вынік выканання кода:

javascript'parent2'

Прыклад

Калі ў бацькоўскіх элементаў няма пазіцыянавання, то offsetParent утрымлівае body:

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

Вынік выканання кода:

javascript'BODY'

Глядзіце таксама

  • уласцівасць offsetParent,
    якая ўтрымлівае бацьку з пазіцыянаваннем
  • уласцівасць offsetTop,
    якая ўтрымлівае зрух элемента зверху
  • уласцівасць offsetLeft,
    якая ўтрымлівае зрух элемента злева
  • метад getBoundingClientRect,
    які знаходзіць зрух элемента