html - 当主dom包含一个类时如何更改shadow Dom中元素的css
问题描述
这是代码:
<html>
<div class="parent-div">
<div id="shadow_host">
#shadow-root(open)
<div class="child-div">some random things</div>
</div>
</div>
</html>
我已将阴影 dom 附加到元素。当主 dom 有一个带有 parent-div 类的父元素时,我想用 class child-div 更改元素的 css。是否可以从css中做
.parent-div .child-div{
display:none
}
解决方案
您可以:host-context()
在 Shadow DOM 样式中使用 CSS 功能。
:host-context(.parent-div) .child-div{
display:none
}
document.querySelector( '#shadow_host' )
.attachShadow( { mode: 'open' } )
.innerHTML = `
<style>
:host-context(.parent-div) .child-div {
display:none
}
</style>
<div class="child-div">some random things</div>
`
<div class="parent-div">
<div id="shadow_host">
</div>
</div>
推荐阅读
- c++ - 在 Ubuntu 中解析数据比 Windows 10 更快
- reactjs - handleSubmit 没有被调用
- php - Get finish date, given start date and schedule in week
- javascript - Fusion Chart 每个变量的不同绘图类型
- javascript - Bootstrap-multiselect 显示隐藏 div 元素
- powershell - 问题转移 ListboxItem 并在 Hashtable 中解决
- javascript - 添加两个数字并显示结果而无需单击按钮
- postgresql - 在 Google Cloud Postgres 上启用逻辑复制
- scala - 如何在注释宏中操作修饰符
- angular - 发送带有角度和离子框架的附加可观察对象的get