母亲特异性的父母

时间:2015-02-13 11:50:38

标签: sass bem

我用BEM风格编写CSS并拥有以下代码:

.nav {
    &__list {
      &__item {
      }    
    }
  &__link {
    &--active { 
    }
  }
}

如何从上面的代码中获取.nav .nav__link--active.nav__link.nav__link--active?如何通过这种方法增强特异性?

1 个答案:

答案 0 :(得分:4)

这没有神奇的方法。将所需的选择器存储为变量并像平常一样嵌套。

.nav {
  $sel: &;
    &__list {
      &__item {
        color: red;
        #{$sel} & {
          border: 1px solid;
        }
      }    
    }
  &__link {
    &--active {
      color: blue;
      #{$sel} & {
        border: 1px dashed;
      }
    }
  }
}