Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 检查是否存在特定的父选择器_Jquery_Html_Css_Sass - Fatal编程技术网

Jquery 检查是否存在特定的父选择器

Jquery 检查是否存在特定的父选择器,jquery,html,css,sass,Jquery,Html,Css,Sass,我有下面的html,里面有两个面板。我只想将CSS应用于外部ky面板和ky面板主体。我该怎么做?我之所以要这样做,是因为面板主要有公共CSS,但我想在面板嵌套时做一些更改 <div class="ky-panel"> <div class="ky-panel-body"> <div class="ky-panel"> <div class="ky-panel-body">

我有下面的html,里面有两个面板。我只想将CSS应用于外部ky面板和ky面板主体。我该怎么做?我之所以要这样做,是因为面板主要有公共CSS,但我想在面板嵌套时做一些更改

<div class="ky-panel">
    <div class="ky-panel-body">
        <div class="ky-panel">
            <div class="ky-panel-body">
                some HTML with some CSS
            </div>
        </div>
    </div>
</div>

对我来说,如果你保持这样的结构,除了将CSS应用于
ky面板主体
ky面板
并在嵌套时还原它之外,没有其他解决方案:

.ky-panel{
    border: 1px solid black; //Just an example

    .ky-panel-body{
        color: red; //Just an example

        .ky-panel{
            border: inherit; //Revert your changes

            .ky-panel-body{
                color: inherit; //Revert your changes
            }
        }
    }
}

通常,该类型的逻辑将放入模板(或模板生成器)中,您将向外部元素添加一个类。在这种特定情况下,您可以使用
:not
,如果您将其与子选择器组合使用:
:not(.ky面板主体)>.ky面板
:not(.ky面板主体)>.ky panel>.ky panel body
此建议无效。我已经试过了,“下面的CSS”不是CSS。请将CSS添加到您的帖子中。可能重复
.ky-panel{
    border: 1px solid black; //Just an example

    .ky-panel-body{
        color: red; //Just an example

        .ky-panel{
            border: inherit; //Revert your changes

            .ky-panel-body{
                color: inherit; //Revert your changes
            }
        }
    }
}