如何使用SASS中的父选择器将类链接到元素

如何使用SASS中的父选择器将类链接到元素,sass,Sass,我正试图用SASS(scss)做以下工作 但我得到一个编译器错误: 在“a.”之后的CSS无效:预期的类名为“&” 有什么办法可以做到这一点吗? 目前,我刚刚打破嵌套,但它的次优为我的情况 谢谢 从开始,您可以使用,以便将选择器的范围限定到根 此外,还需要插入父选择器,&,如:a{&}: .class { // Base class styles @at-root a#{&} { color: #000; } } 这将编译为: a.class { color:

我正试图用SASS(scss)做以下工作

但我得到一个编译器错误:

在“a.”之后的CSS无效:预期的类名为“&”

有什么办法可以做到这一点吗? 目前,我刚刚打破嵌套,但它的次优为我的情况

谢谢

从开始,您可以使用,以便将选择器的范围限定到根

此外,还需要插入父选择器,
&
,如:
a{&}

.class {
  // Base class styles

  @at-root a#{&} {
    color: #000;
  }
}
这将编译为:

a.class {
  color: #000;
}
a.class {
  color: #f00;
}
p.class {
  float: left;
}

值得一提的是,您可以在根目录下的
@下嵌套多个元素:

.class {
  // Base class styles

  @at-root {
    a#{&} {
      color: #f00;
    }
    p#{&} {
      float: left;
    }
  }
}
这将编译为:

a.class {
  color: #000;
}
a.class {
  color: #f00;
}
p.class {
  float: left;
}

很好,谢谢!这是伟大的,你可以使用它与或没有额外的嵌套。你知道为什么不能用简单明了的方式回答问题吗?请多做一点努力来结束重复的问题,而不是回答它们。@cimmanon…我不经常回答SASS的问题,所以我不知道问了什么。我只是想帮忙。@krulik我不确定它背后的原因,因为在
a.&
中,它会像预期的那样编译成
a.class
。@cimmanon我很清楚它可能被问到了,但找不到,建议者也没有提出。很抱歉