为什么应用于身体的颜色会影响阴影根

时间:2018-05-21 14:36:13

标签: html css shadow-dom

这是我的简单HTML。 load_module /usr/local/libexec/nginx/ngx_rtmp_module.so; 位于影子根目录内,但它是绿色的。这种颜色继承的行为是否来自阴影DOM之外的父元素?我想知道因为元素选择器不能跨越阴影边界(h1样式不会应用于阴影根中的h1

h1

理想情况下,我正在寻找定义此行为的规范的一部分。

2 个答案:

答案 0 :(得分:3)

是的,这种行为是预料之中的。来自spec

  

影子树的顶级元素继承自其主机元素。

在您的情况下,影子主机my-element继承body元素的颜色。位于h1影子根目录中的my-element继承自my-element

答案 1 :(得分:1)

存在shadowHost和shadowRoot。

shadowRoot 是附加到元素以提供阴影DOM的内容。

shadowHost 是影子根附加到的内容。

当你在html页面中定义一些平面时,它会附加到body element shadowroot。 同样地说,它附加到身体的shadowDOM,或身体作为shadowHost。

我猜这是默认行为'default shadowRoot'。你正在写'text is green',因为body应该是页面内容的根元素。虽然html标签描述了文档语言。头部定义了元数据内容。

因此正确地继承了绿色风格。