diff --git a/packages/popper/src/utils/getOuterSizes.js b/packages/popper/src/utils/getOuterSizes.js index e5e60213b6..6a266b5072 100644 --- a/packages/popper/src/utils/getOuterSizes.js +++ b/packages/popper/src/utils/getOuterSizes.js @@ -6,7 +6,8 @@ * @returns {Object} object containing width and height properties */ export default function getOuterSizes(element) { - const styles = getComputedStyle(element); + const window = element.ownerDocument.defaultView; + const styles = window.getComputedStyle(element); const x = parseFloat(styles.marginTop) + parseFloat(styles.marginBottom); const y = parseFloat(styles.marginLeft) + parseFloat(styles.marginRight); const result = { diff --git a/packages/popper/src/utils/getStyleComputedProperty.js b/packages/popper/src/utils/getStyleComputedProperty.js index e2b245793c..014f32bb8e 100644 --- a/packages/popper/src/utils/getStyleComputedProperty.js +++ b/packages/popper/src/utils/getStyleComputedProperty.js @@ -10,6 +10,7 @@ export default function getStyleComputedProperty(element, property) { return []; } // NOTE: 1 DOM access here - const css = getComputedStyle(element, null); + const window = element.ownerDocument.defaultView; + const css = window.getComputedStyle(element, null); return property ? css[property] : css; }