Web/API/CSSPseudoElement/element

From Get docs

This is an experimental technologyCheck the Browser compatibility table carefully before using this in production.


The element read-only property of the CSSPseudoElement interface returns a reference to the originating element of the pseudo-element, in other words its parent element.

Syntax

var originatingElement = cssPseudoElement.element;

Value

An Element representing the pseudo-element's originating element.

Examples

The example below demonstrates the relationship between CSSPseudoElement.element and Element.pseudo():

const myElement = document.querySelector('q');
const cssPseudoElement = myElement.pseudo('::after');
const originatingElement = cssPseudoElement.element;

console.log(myElement === originatingElement);                  // Outputs true
console.log(myElement.parentElement === originatingElement);    // Outputs false
console.log(myElement.lastElementChild === cssPseudoElement);   // Outputs false
console.log(myElement.lastChild === cssPseudoElement);          // Outputs false
console.log(myElement.nextElementSibling === cssPseudoElement); // Outputs false
console.log(myElement.nextSibling === cssPseudoElement);        // Outputs false

Specifications

Specification Status Comment
CSS Pseudo-Elements Level 4The definition of 'element' in that specification. Working Draft Initial definition.

Browser compatibility

Update compatibility data on GitHub

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet

element

Experimental'

Chrome

No support No

Edge

No support No

Firefox Full support 75

Disabled'

Full support 75

Disabled'

Disabled' From version 75: this feature is behind the dom.css_pseudo_element.enabled preference. To change preferences in Firefox, visit about:config. No support 67 — 75

Disabled'

Disabled' From version 67 until version 75 (exclusive): this feature is behind the dom.animations-api.getAnimations.enabled preference. To change preferences in Firefox, visit about:config. No support 63 — 67

Alternate Name' Disabled'

Alternate Name' Uses the non-standard name: parentElement Disabled' From version 63 until version 67 (exclusive): this feature is behind the dom.animations-api.getAnimations.enabled preference. To change preferences in Firefox, visit about:config. No support 47 — 63

Alternate Name' Disabled'

Alternate Name' Uses the non-standard name: parentElement Disabled' From version 47 until version 63 (exclusive): this feature is behind the dom.animations-api.core.enabled preference. To change preferences in Firefox, visit about:config.

IE

No support No

Opera

No support No

Safari

No support No

WebView Android

No support No

Chrome Android

No support No

Firefox Android Full support 67

Disabled'

Full support 67

Disabled'

Disabled' From version 67: this feature is behind the dom.animations-api.getAnimations.enabled preference. To change preferences in Firefox, visit about:config. No support 63 — 67

Alternate Name' Disabled'

Alternate Name' Uses the non-standard name: parentElement Disabled' From version 63 until version 67 (exclusive): this feature is behind the dom.animations-api.getAnimations.enabled preference. To change preferences in Firefox, visit about:config. No support 47 — 63

Alternate Name' Disabled'

Alternate Name' Uses the non-standard name: parentElement Disabled' From version 47 until version 63 (exclusive): this feature is behind the dom.animations-api.core.enabled preference. To change preferences in Firefox, visit about:config.

Opera Android

No support No

Safari iOS

No support No

Samsung Internet Android

No support No

Legend

Full support  
Full support
No support  
No support
Experimental. Expect behavior to change in the future.'
Experimental. Expect behavior to change in the future.
User must explicitly enable this feature.'
User must explicitly enable this feature.
Uses a non-standard name.'
Uses a non-standard name.


See also