代码之家  ›  专栏  ›  技术社区  ›  conartist6

JSDOM操作如何影响CSS规则匹配?

  •  0
  • conartist6  · 技术社区  · 14 年前

    这里是设置:为需要在一个单独的分区中一起显示的许多项目动态生成内容。布局是:一个外部分区(所有内容的容器)、几个内部分区(内容不同),以及彼此内部分区中的一个分区,以及一些文本。

    最外面的DIV从一开始就是页面的一部分,JS通过ID获取它。接下来生成每个内部DIV及其内容,然后将其附加到外部DIV.rinse,repeat。

    外部DIV有一个与CSS中的类匹配的类。内部分区匹配为:

    .outerdiv div{...
    

    现在。。。实际发生的是:内部DIV和内容DIV都匹配outerDiv DIV规则,尽管其中一个很明显是(在inspector、firefox和chrome中三次检查)内部DIV的子级,而不是外部DIV。

    我把这个放在两个不同的地方,所以我很确定我没疯。有人能告诉我当DOM操作发生时如何评估CSS规则吗?(或者去哪里找?)

    谢谢, -康拉德

    1 回复  |  直到 14 年前
        1
  •  5
  •   deceze    14 年前

    这个 .outerdiv div 选择器选择 任何 div 在内部 .outerdiv 不仅是直系子女。要选择元素的直接子元素,有 > selector (但IE6不支持)。

    对于最后一个问题,CSS规则总是被重新评估,即即使在操作DOM时,元素也总是按照CSS规则进行样式化,并且不通过DOM操作或类似的操作“继承”规则。