Element: part 属性

Baseline 已广泛支持

此特性已经十分成熟,可在许多设备和浏览器版本上使用。自 2020 年 7 月以来,它已在各大浏览器中可用。

Element 接口的 part 属性表示元素的 part 标识符(即使用 part 属性设置的值),返回一个 DOMTokenList。这些标识符可以通过 ::part 伪元素来为 shadow DOM 的部分设置样式。

一个 DOMTokenList 对象。

示例

以下摘录来自我们的 shadow-part 示例。在这里,part 属性用于查找 shadow parts,然后 part 属性用于更改每个选项卡的 part 标识符,以便在单击选项卡时将正确的样式应用于活动选项卡。

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);
});

规范

规范
CSS 影子部分
# idl

浏览器兼容性

另见