为什么几乎所有这个文件都在输出中被省略了?

时间:2017-05-04 20:17:49

标签: css sass

使用基于缩进的sass我有一个特定的css规则我试图生成被默默省略。没有错误消息,在我将其转换为缩进格式之前,它正常工作。我在https://www.sassmeister.com/中尝试了以下代码,行为是相同的

button.btn-danger
  background-image:none
button
  border: 1px inset
  .danger
    background-image:none
  .btn
    background-image:none
  &.btn
    background-image:none
  &:hover
    font: 10px
button.btndanger
  backgroundimage:none

其中涉及带有danger的类名的代码都不在输出中:

button {
  border: 1px inset;
}
button:hover {
  font: 10px;
}

我原来的:

button
  .btn-danger
    background-image:none

这是sass中的一个错误,我的语法是否有问题,或者我的css选择器是否存在违法行为?

(编辑)其他信息: 这两项工作(即使在3.3.14)

button.btn-danger
  :background-image none

button
  &.btn-danger
    :background-image none

1 个答案:

答案 0 :(得分:1)

你使用的是错误的编译器,需要使用libSass进行编译,看一下demo

SASS

// ----
// libsass (v3.5.0.beta.2)
// ----

button.btn-danger
  background-image:none

button
  border: 1px inset
  .danger
    background-image:none
  .btn
    background-image:none
  &.btn
    background-image:none
  &:hover
    font: 10px

button.btndanger
  backgroundimage:none

输出

button.btn-danger {
  background-image: none;
}

button {
  border: 1px inset;
}

button .danger {
  background-image: none;
}

button .btn {
  background-image: none;
}

button.btn {
  background-image: none;
}

button:hover {
  font: 10px;
}

button.btndanger {
  backgroundimage: none;
}