Вот моя попытка, но элементы span
не имеют границы deeppink
, как я надеюсь (я в Google Chrome 83):
const d = document.querySelector('div')
const r = d.attachShadow({mode: 'open'})
r.innerHTML = `
<style>
/* This doesn't work as I was hoping: */
::slotted(p) span {
border: 1px solid deeppink;
}
/* This doesn't work (and I wouldn't expect it to), but I tried it anyways: */
::slotted(span) {
border: 1px solid deeppink;
}
/* This doesn't work either: */
:host span {
border: 1px solid deeppink;
}
/* This works, but not what I'm trying to do. */
::slotted(p) {
background: #f9f9f9
}
</style>
<slot></slot>
`
<div>
<p><span>test</span></p>
<p><span>test</span></p>
<p><span>test</span></p>
<p><span>test</span></p>
<p><span>test</span></p>
</div>
Как мы стилизуем потомков распределенных (разделенных) дочерних элементов?