如果元素B包含某个类,则在元素A上应用样式

时间:2016-11-25 10:34:43

标签: css sass

是否可以检查元素的类,看它是否存在,然后将该样式应用于另一个类?

伪代码示例:

    static void foo(unsigned char *cmd)
    {
        strcat(cmd, "\r\n");
        printf("\r\nfoo: #%s#", cmd);

    }
    int main()
    {
        foo("test");
        return 0;
    }

1 个答案:

答案 0 :(得分:1)

在这种情况下不可能。但是你可以通过CSS的级联特性获得类似的结果。

将课程应用于您网站的正文:

.another-class {
    display: none; // hides .another-class by default
}

body.special-class {
    .another-class {
        display: block; // shows if the body contains .special-class
    }
}

由于第二条规则生成的输出的特异性较高,因此.another-class的元素将可见。

为下一行添加一个类

利用+选择器,我们可以显示上述类的行after。这样我们就可以设置下拉菜单的样式,因为我们有以下HTML:

.popup {
  display: none;
}

.popup:hover {
  display: block;
}

.container:hover + .popup {
  display: block;
}
<div class="container">Hover me!</div>
<div class="popup">This is a popup!</div>

我担心CSS的一切可能性。