Я пытаюсь стилизовать дочерний элемент теневого корня DOM.
Это определяет настраиваемый элемент с именем element-el
, который имеет span
класс с именем 'x' с буквой x в нем, которую я хочу, для состояния по делу, чтобы быть красным.
class El extends HTMLElement {
constructor() {
super();
var shadow = this.attachShadow({mode:'open'});
shadow.innerHTML = '<span class="x">X</span>';
}
}
customElements.define ('element-el',El);
Я пробовал эти стили CSS:
element-el::slotted(.x) {
color:red;
}
element-el::host .x {
color:red;
}
element-el:host .x {
color:red;
}
element-el::shadow .x {
color:red;
}
element-el /deep/ .x {
color: red;
}
element-el::content .x {
color:red;
}
X не становится красным. Я использую Chrome 56, который должен это поддерживать ...
Я хочу стилизовать его, не помещая элемент style
внутри теневого DOM.
Вот код: http://codepen.io/anon/pen/OpRLVG?editors=1111
РЕДАКТИРОВАТЬ:
Эта статья предполагает, что можно стилизовать теневых дочерних элементов из внешнего файла CSS - они просто неверны?