Sass:如何在悬停中获取父选择器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Sass:如何在悬停中获取父选择器相关的知识,希望对你有一定的参考价值。

重现步骤:

.root {
    .parent {
        color: red;

        &:hover & {
            &__child {
                background-color: blue;
            }
        }
    }
}

实际发生了什么:

.root .parent {
  color: red;
}

.root .parent:hover .root .parent__child {
    background-color: blue;
}

预期结果:

.root .parent {
  color: red;
}

.root .parent:hover .parent__child {
    background-color: blue;
}

所以,&中的&:hover不再是父选择器了。如何获得父选择器?

答案

&用于在嵌套时将选择器连接在一起,因此您只需要在hover上使用它。你不需要额外的&

尝试:


/* hover concatenated to 'parent' and the 'parent__child' is nested to hover */
.root {
    .parent {
        color: red;

        &:hover {
            .parent__child{
                background-color: blue;
            }
        }
    }
}

以上是关于Sass:如何在悬停中获取父选择器的主要内容,如果未能解决你的问题,请参考以下文章

Sass:使用多个嵌套选择器选择父元素

Sass-父选择器???自身选择器

如何在 JSS 中使用子选择器

Sass 使用与号 (&) 和类型选择器组合父级

使用 Sass 将父选择器附加到末尾

sass