我试图在影子DOM中样式化文本,但没有成功。唯一的问题是,我希望从影子DOM外部进行操作。另一个重要的问题是,影子DOM样式应该仅适用于“bar”元素内部的影子DOM。以下是我的测试代码:
<!doctype html>
<html>
<head>
<style>
:host(bar) span:first-child {
text-transform: uppercase;
color: green;
}
</style>
</head>
<body>
<bar></bar>
<script>
var bar = document.querySelector('bar');
var root = bar.createShadowRoot();
root.innerHTML = '<span>bar</span><span>foo</span>';
</script>
</body>
</html>
而且还有一个额外的问题,的确切含义是什么?
:host(bar:host) { ... }
做什么?
span:first-of-type
。此外,在包装您的影子 DOM HTML 时使用父元素也可能解决很多问题。 - Entoarox/deep/
组合器已更改为>>>
查看规范的最新版本。 - cloudworks