#css #sass
#css #sass
Вопрос:
Всякий раз, когда я пытаюсь скомпилировать код Sass в CSS с помощью терминала или программы Koala, я получаю это сообщение об ошибке:
Error: Invalid CSS after "body ": expected selector, was "{"
on line 5 of style.sass
Use --trace for backtrace
Вот фрагмент кода, на который, похоже, ссылается ошибка:
body {
background {
color: $background-color
}
}
Как я могу исправить свой код, чтобы он правильно компилировался?
Комментарии:
1. вы должны удалить фигурные скобки
{}
2. Я думаю, что ваша ошибка вызвана чем-то еще. Возможно, ваш компилятор не осознал проблему, пока не достиг указанной точки. Тем не менее, даже если ваш SASS сработал, я не думаю, что он будет делать то, что вы ожидаете.
background
вряд ли это элемент, но вы, похоже, рассматриваете его как таковой. Я подозреваю, что вы хотитеbody { background-color: $background-color }
вместо этого.3. @QoP это решило проблему. Спасибо!
Ответ №1:
Способ чтения вашего селектора заключается в том, что он ищет <body>
элемент, а затем <background>
элемент (который, насколько мне известно, не существует в HTML), а затем вы устанавливаете текст внутри этого элемента color
в свой var $background-color
. Я думаю, что либо одно из двух:
Либо вы имели в background
виду, что это класс или идентификатор, например .background
, и в этом случае ваш код становится:
body {
.background {
color: $background-color;
}
}
Или, что более вероятно, вы очень устали и просто перепутали провода и хотите установить background-color
свойство следующим образом:
body {
background-color: $background-color;
}
Пожалуйста, обратите внимание, что вам также не хватало конечной точки с запятой, которую я добавил.
Ответ №2:
Вы можете попробовать добавить двоеточие после. background
body {
background: {
color: $background-color;
}
}
Ответ №3:
Sass, в отличие от Scss, использует отступ вместо фигурных скобок.
body {
background {
color: $background-color;
}
}
становится
body
background
color: $background-color
Хотя, я совершенно уверен, что вы имеете в виду иметь background
в качестве свойства вместо селектора.
body
background-color: $background-color
Ответ №4:
фоном должно быть имя класса или идентификатор или просто свойство css background.
body {
.background {
color: $background-color;
}
}
body {
#background {
color: $background-color;
}
}
body {
background : $background-color;
}