The part
property of the Element
interface represents the part identifier(s) of the element (i.e. set using the part
attribute), returned as a DOMTokenList
. These can be used to style parts of a shadow DOM, via the ::part
pseudo-element.
The part
property of the Element
interface represents the part identifier(s) of the element (i.e. set using the part
attribute), returned as a DOMTokenList
. These can be used to style parts of a shadow DOM, via the ::part
pseudo-element.
A DOMTokenList
object.
The following excerpt is from our shadow-part example. Here the part
attribute is used to find the shadow parts, and the part
property is then used to change the part identifiers of each tab so the correct styling is applied to the active tab when tabs are clicked.
js
const tabs = []; const children = this.shadowRoot.children; for (const elem of children) { if (elem.getAttribute("part")) { tabs.push(elem); } } tabs.forEach((tab) => { tab.addEventListener("click", (e) => { tabs.forEach((tab) => { tab.part = "tab"; }); e.target.part = "tab active"; }); console.log(tab.part); });
Specification |
---|
CSS Shadow Parts # idl |
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
part |
73 | 79 | 72 | No | 60 | 13.1 | 73 | 73 | 79 | 52 | 13.4 | 11.0 |
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Element/part