我试图使一个css选择器,根据天气html是否在iframe内分配不同的
属性.我试过这个:
html:not(:root) body {
background: black !important;
}
我期望这样应用背景:黑色;如果它在一个iframe里面,但是它不是,为什么?有没有任何css选项?我可以随时检查javascript如果html是根.
IE8不支持.
CSS仅在同一文档中作用域. iframe是一个完整的文档,因此适用于包含该iframe的
页面的CSS规则无法应用于该iframe内的
页面.
这意味着就HTML和CSS而言,html始终是:root(因此永远不会是:not(:root)).
除非你能够将这个CSS从包含的页面转移到iframe中的页面(例如使用一个脚本),我不相信有一种方法只使用CSS.