Non-standard: This feature is non-standard and is not on a standards track. Do not use it on production sites facing the Web: it will not work for every user. There may also be large incompatibilities between implementations and the behavior may change in the future.

Note: This API is available only to WebExtensions.

The Element.openOrClosedShadowRoot read-only property represents the shadow root hosted by the element, regardless if its mode is open or closed.

Use Element.attachShadow() to add a shadow root to an existing element.


A ShadowRoot object instance, regardless if its mode is set to open or closed, or null if no shadow root is present. (See Element.attachShadow() for further details).


This property is not part of any specification.

Browser compatibility

BCD tables only load in the browser

See also