Как получить offsetParent для текста внутри display: contents?

Для div и текста в нём offsetParent достаётся нормально, но для section и текста непосредственно в нём получается null. Как ещё можно получить offsetParent желательно не проверяя всех родителей самому в цикле?

Кстати, статья на mdn ничего не говорит о взаимодействии display: contents и offsetParent - там только о display: none.

function logOffsetParent(node) {
  console.log(
    node.outerHTML || node.textContent,
    '    ',
    'offsetParent' in node
      ? node.offsetParent
      : node.parentElement?.offsetParent,
  )
}

logOffsetParent(document.querySelector('div'))
logOffsetParent(document.querySelector('div').firstChild)
logOffsetParent(document.querySelector('section'))
logOffsetParent(document.querySelector('section').firstChild)
main {
  position: relative;
}

section {
  display: contents;
}
<main><section>in section<div>in div</div></section></main>

PS: Этот вопрос на английском.


Ответы (0 шт):