17 lines
465 B
JavaScript
17 lines
465 B
JavaScript
import css from './css';
|
|
import ownerDocument from './ownerDocument';
|
|
|
|
var isHTMLElement = function isHTMLElement(e) {
|
|
return !!e && 'offsetParent' in e;
|
|
};
|
|
|
|
export default function offsetParent(node) {
|
|
var doc = ownerDocument(node);
|
|
var parent = node && node.offsetParent;
|
|
|
|
while (isHTMLElement(parent) && parent.nodeName !== 'HTML' && css(parent, 'position') === 'static') {
|
|
parent = parent.offsetParent;
|
|
}
|
|
|
|
return parent || doc.documentElement;
|
|
} |