如何使用SASS在简单项目中嵌套容器类?

如何使用SASS在简单项目中嵌套容器类?,sass,Sass,HTML: 因为我不想对.container使用双重样式。 不是这样的: <section> <div class="container"></div> </section> <nav> <div class="container"></div> </nav> section { .container { } } nav { .continer { } } 因为容器在节中,而

HTML:

因为我不想对.container使用双重样式。 不是这样的:

<section>
  <div class="container"></div>
</section>
<nav>
  <div class="container"></div>
</nav>
section {
  .container {
  }
}

nav {
 .continer {
 }
}
因为容器在节中,而不是容器中的节。那怎么办

我可以使用“&”,但:

将编译为:

body {
  .container {
     section & {
     }
  }
}
但我需要:

 section body .container {
 }

您可以通过使用引用父选择器的“&”来实现它

body section .container {
}
以上内容将编译为

.container {
  section & {
    color: blue;
  }

  nav & {
    color: black;
  }
}
您上面提到的编译方法与此相反,如:

section .container {
  color: blue;
}

nav .container {
  color: black;
}

这不是您要查找的内容。

要将样式添加到将在节和导航中显示的容器div,请执行以下操作:

.container section {
}
编译成

section, nav {
  .container {
      color: red;
  }
}

好的,但当我把body样式再高一行时,我会得到:css中的section body.container{}。你把它放在哪里了?请再看看我的问题。我解释过。如果你按照答案做,你只需要在嵌套部分中添加body。车身部分和车身导航&
section, nav {
  .container {
      color: red;
  }
}
section .container {color: red;}
nav .container {color: red;}