5 августа буду в отъезде. отвечаю по возможности

Свойство offsetParent

Свойство offsetParent содержит ближайшего родителя, относительно которого происходит позиционирование элемента. Это будет либо ближайший родитель, у которого CSS свойство position не равно static, либо тег body, если родителя с таким позиционированием нет.

Синтаксис

элемент.offsetParent

Пример

Давайте найдем родительский элемент со свойством position, отличными от static:

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

Результат выполнения кода:

'parent2'

Пример

Если у родительских элементов нет позиционирования, то offsetParent содержит body:

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

Результат выполнения кода:

'BODY'

Смотрите также

  • свойство offsetParent,
    которое содержит родителя с позиционированием
  • свойство offsetTop,
    которое содержит смещение элемента сверху
  • свойство offsetLeft,
    которое содержит смещение элемента слева
  • метод getBoundingClientRect,
    который находит смещение элемента