Proprietatea offsetParent
Proprietatea offsetParent conține cel mai apropiat
părinte, relativ la care are loc
poziționarea elementului. Acesta va fi fie
cel mai apropiat părinte, care are proprietatea CSS
position
diferită de static, fie tag-ul body,
dacă nu există un părinte cu astfel de poziționare.
Sintaxă
element.offsetParent;
Exemplu
Să găsim elementul părinte cu proprietatea
position, diferită de 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);
Rezultatul executării codului:
'parent2'
Exemplu
Dacă elementele părinte nu au poziționare,
atunci offsetParent conține body:
<div>
<p id="elem">text</p>
</div>
let elem = document.querySelector('#elem');
console.log(elem.offsetParent.tagName);
Rezultatul executării codului:
'BODY'
Vedeți și
-
proprietatea
offsetParent,
care conține părintele cu poziționare -
proprietatea
offsetTop,
care conține deplasarea elementului de sus -
proprietatea
offsetLeft,
care conține deplasarea elementului din stânga -
metoda
getBoundingClientRect,
care găsește deplasarea elementului