【问题标题】:How to add a class to a nested child's parent using SASS? [duplicate]如何使用 SASS 将类添加到嵌套子级的父级? [复制]
【发布时间】:2015-06-23 16:21:53
【问题描述】:

这是一个基本示例,但我想在嵌套子级中向父级添加一个类。

所需的 CSS:

.addon .checkbox { background: blue; }
.addon.active .checkbox { background: red; }

使用 SASS

 .addon {
       .checkbox { 
         background: blue; 
         .active & { background: red }
         .addon.active & { background: red }
       }
 }

这给了我以下信息:

.addon .checkbox {
  background: blue;
}
.active .addon .checkbox {
  background: red;
}
.addon.active .addon .checkbox {
  background: red;
}

如您所见,我无法使用 & 符号获得所需的结果。 我可以使用嵌套做我想做的事情吗,还是必须使用普通的 css 方式写出来。

回答:

.addon {
    .checkbox { 
       background: blue; 
       @at-root #{selector-replace(&, '.addon', '.addon.active')} {
          background: red;
       }
   } 
}

【问题讨论】:

标签: css sass ampersand


【解决方案1】:

你要找的是

.addon {
  .checkbox {...}

  &.active {
    .checkbox {...}
  }
}

遗憾的是,没有更短的形式来编写这样的选择器。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-04-22
    • 2020-03-21
    • 2015-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多