Ошибка при попытке скомпилировать SASS в CSS для веб-сайта

Всем привет! Я пытаюсь скомпилировать свой файл SASS в CSS с помощью приложения Scout, и до сих пор он работал нормально. При сохранении для компиляции я получаю следующую ошибку. Я приложил код и переменные ниже!

Error: Invalid CSS after "@mixin h1-text {": expected "}", was "{"↵        on line 2 of ../../../Documents/bootstrap_practice/SASS/mixins.sass↵>> @mixin h1-text { {↵   ----------------^↵"

Может ли кто-нибудь помочь мне, это было бы очень признательно!

**`//TEXT MIXINS
@mixin h1-text {
  color: $red-text
  font-family: $font-stack
  font-size: $font-size
  font-weight: $font-weight-nav
  letter-spacing: $h1-letter-spacing
  text-align: $alignment
  border: $border-original
  border-radius: $border-radius
}
@mixin h1-hover {
  color: $orange-text
  background-color: $navbar-background
  border: $border-original2
}
@mixin h2-text {
  color: $orange-text
  font-family: $font-stack
  font-size: $font-size
  font-weight: $font-weight-nav
  letter-spacing: $h2-letter-spacing
  text-align: $alignment
  border: $border-original2
  border-radius: $border-radius
}
@mixin h2-hover {
  color: $red-text
  background-color: $navbar-background
  border: $border-original
}
@mixin h3-text {
  color: $darkred-text
  font-family: $font-stack
  font-size: $h3-font-size
  font-weight: $font-weight-main
  text-align: $alignment
}
//MAIN TEXT BORDER MIXIN
@mixin border1-main {
  border: $border-modified
  border-radius: $border-radius2
  margin-top: 100px
  margin-bottom: 150px
}
//DIV MIXINS
@mixin div {
  width: $div-width
  margin: $div-align
}
@mixin div2 {
  width: $div-width2
  margin: $div-align
}
//NAVBAR MIXINS
@mixin navbar-main {
  overflow: hidden
  background-color: $navbar-background
}
@mixin navbar-fade-in {
  opacity: 1;
  transition: opacity .25s ease-in-out;
  -moz-transition: opacity .25s ease-in-out;
  -webkit-transition: opacity .25s ease-in-out;
}
@mixin navbar-a {
  float: left
  dispaly: block
  color: $darkred-text
  font-family: $font-stack
  text-align: center
  padding: 14px
  letter-spacing: $navbar-letter-spacing
  text-decoration: none
}
@mixin navbar-a-hover {
  background-color: $background
  color: $red-text
}
@mixin content-navbar {
  padding: 16px
}
@mixin sticky {
  position: fixed
  top: 0
  width: 100%
}
@mixin sticky-content {
  padding-top: 60px
}
//SOCIAL BAR MIXINS
@mixin icon-bar {
  position: fixed
  top: 50%
  -webkit-transform: translateY (-50%)
  -ms-transform: translateY (-50%)
  transform: translateY (-50%)
}
@mixin icon-bar-a {
  display: block
  text-align: center
  padding: 16px
  transition: all 0.5s ease
  color: $white
  font-size: 15px
}
@mixin icon-bar-a-hover {
  background-color: $navbar-background
  color: #000
}
@mixin facebook {
  background: $facebook
  color: $white
}
@mixin twitter {
  background: $twiter
  color: $white
}
@mixin google {
  background: $google
  color: $white
}
@mixin linkedin {
  background: $linkedin
  color: $white
}
@mixin youtube {
  background: $youtube
  color: $white
}
//FOOTER MIXIN
@mixin footer-main {
  position: fixed
  left: 0
  bottom: 0
  width: 100%
  background-color: $footer-background
  color: $white
  text-align: center
}
//CURSOR EDIT MIXIN
@mixin cursor1 {
  cursor: $cursor-removal
}
@mixin cursor2 {
  cursor: $cursor-removal2
}
`**

//text-colors
$red-text: #FF0000
$darkred-text: #C60505
$orange-text: #FF5733
$white: white

//background color
$background: #ECFFFE
$navbar-background: #E1F1F0
$footer-background: #E1F1F0

//social bar
$facebook: #3B5998
$twitter: #55ACEE
$google: #DD4B39
$linkedin: #007BB5
$youtube: #BB0000

//typography
$font-stack:    source-sans-pro, "Helvetica Neue", Helvetica, Arial, sans-serif
$font-stack-hover: "monospace"
$font-size: 30px
$h3-font-size: 25px
$h3-font-size-2: 20px
$font-weight-nav: 500
$font-weight-main: 400
$alignment: center
$h1-letter-spacing: 3px
$h2-letter-spacing: 3px
$navbar-letter-spacing: 2px

//borders
$border-original: 3px solid $red-text
$border-original2: 3px solid $orange-text
$border-modified: 2px solid $navbar-background
$border-radius: 30px
$border-radius2: 10px


//cursor
$cursor-removal: pointer
$cursor-removal2: default

//divs
$div-width: 400px
$div-width2: 800px
$div-align: auto

Добавлять ; после каждой строки в CSS, например "color: $ red-text;"

tanaydin 04.04.2018 10:48

Привет, Танай, я все еще получаю сообщение об ошибке? Неверный CSS после "@mixin h1-text {": expected "}" был "{" mixins.sass 1: // ТЕКСТОВЫЕ СМЕСИ 2: @mixin h1-text {3: color: $ red-text;

shaminder galla 04.04.2018 10:51

Я думаю, у вас проблема со строкой ** `// TEXT MIXINS ... она не может ее проанализировать.

tanaydin 04.04.2018 10:54

К сожалению, я попытался удалить комментарий, и после этого ошибка все еще возникает.

shaminder galla 04.04.2018 10:55

Можете ли вы обновить пример кода, добавив в него внесенные вами изменения?

Michael B. 04.04.2018 11:00

Удалите ** // TEXT MIXINS и `` ** '' в конце и добавьте ; после каждого объявления.

Derpanel 04.04.2018 11:00

Привет @MichaelB. он не позволит мне обновить пример кода, хотя единственное отличие состоит в том, что первый комментарий // TEXT MIXINS удаляется, а также добавляется ";" до конца каждой строки.

shaminder galla 04.04.2018 11:07

@Derpanel ** добавляются переполнением стека, а не мной

shaminder galla 04.04.2018 11:07

Миксин должен выглядеть так: @mixin cursor2 { cursor: $cursor-removal2; } Ни больше ни меньше. Он должен работать, если вы напишете правильно. Я скопировал ваш код и отлично его скомпилировал.

Derpanel 04.04.2018 11:11

@Derpanel точно может быть что-то не так с моим компилятором? скаут-приложение? так как я писал свои миксины так же, как и всегда ...

shaminder galla 04.04.2018 11:15

Вы что-то делаете не так. Начните с пустого файла, добавьте только одну переменную $color: red; и скомпилируйте. Если это не компилируется, замените компилятор. Если он компилируется, добавьте простой миксин - @mixin red{ color: $color; }. Продолжайте добавлять что-то с этим синтаксисом и посмотрите, где компилятор не работает.

Derpanel 04.04.2018 11:28

@Derpanel Это проблема самих миксинов, поскольку я сделал то, что вы сказали, и документ компилируется нормально?

shaminder galla 04.04.2018 12:16

Вы используете синтаксис SCSS с расширением SASS, вот в чем проблема. Прочтите ответ Джереми, чтобы узнать о правильном синтаксисе SASS, или придерживайтесь своего синтаксиса, но измените расширение файла на .scss. Подробнее здесь: stackoverflow.com/a/27209555/1523418

Derpanel 05.04.2018 13:41

На самом деле это не миксины, а должны быть классы

Brad 05.04.2018 13:42
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
0
14
467
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Удалите {} ... они вам не нужны

@mixin something
  attribute: value

Привет, Маркус, спасибо за пример, хотя это не сработало

shaminder galla 04.04.2018 11:18

Вы уверены, что я только что скопировал, вставил ваш код и удалил все {}; и ваши комментарии. Для меня это сработало. Раньше у меня были похожие ошибки.

Markus 04.04.2018 11:25

Я починил твой файл за тебя.

Найдите его в конце этого поста.

Основная проблема заключается в том, что вы смешали некоторый CSS (от строки 1 до 148) с остальной частью вашего файла Sass (от 148 до конца файла). Вы не можете просто скопировать вставку CSS в файл Sass. Вы должны адаптировать это.

Вот ваши проблемы:

  1. Строка 1 и 148, была странная вещь **' (я думаю, это из-за некоторый копипастинг), удалил его.
  2. Sass не использует точки с запятой для завершения строк, я удалил их все
  3. @mixin - это ключевое слово SCSS, а не ключевое слово Sass, вместо этого вы должны использовать =, я заменил все ваши @mixin на =
  4. Фигурные скобки в Sass не используются, только отступы, я удалил все {}

Теперь вот ваш файл mixins.sass, написанный на простом синтаксисе Sass:

//TEXT MIXINS
=h1-text
  color: $red-text
  font-family: $font-stack
  font-size: $font-size
  font-weight: $font-weight-nav
  letter-spacing: $h1-letter-spacing
  text-align: $alignment
  border: $border-original
  border-radius: $border-radius

=h1-hover
  color: $orange-text
  background-color: $navbar-background
  border: $border-original2

=h2-text
  color: $orange-text
  font-family: $font-stack
  font-size: $font-size
  font-weight: $font-weight-nav
  letter-spacing: $h2-letter-spacing
  text-align: $alignment
  border: $border-original2
  border-radius: $border-radius

=h2-hover
  color: $red-text
  background-color: $navbar-background
  border: $border-original

=h3-text
  color: $darkred-text
  font-family: $font-stack
  font-size: $h3-font-size
  font-weight: $font-weight-main
  text-align: $alignment

//MAIN TEXT BORDER MIXIN
=border1-main
  border: $border-modified
  border-radius: $border-radius2
  margin-top: 100px
  margin-bottom: 150px

//DIV MIXINS
=div
  width: $div-width
  margin: $div-align

=div2
  width: $div-width2
  margin: $div-align

//NAVBAR MIXINS
=navbar-main
  overflow: hidden
  background-color: $navbar-background

=navbar-fade-in
  opacity: 1
  transition: opacity .25s ease-in-out
  -moz-transition: opacity .25s ease-in-out
  -webkit-transition: opacity .25s ease-in-out

=navbar-a
  float: left
  dispaly: block
  color: $darkred-text
  font-family: $font-stack
  text-align: center
  padding: 14px
  letter-spacing: $navbar-letter-spacing
  text-decoration: none

=navbar-a-hover
  background-color: $background
  color: $red-text

=content-navbar
  padding: 16px

=sticky
  position: fixed
  top: 0
  width: 100%

=sticky-content
  padding-top: 60px

//SOCIAL BAR MIXINS
=icon-bar
  position: fixed
  top: 50%
  -webkit-transform: translateY (-50%)
  -ms-transform: translateY (-50%)
  transform: translateY (-50%)

=icon-bar-a
  display: block
  text-align: center
  padding: 16px
  transition: all 0.5s ease
  color: $white
  font-size: 15px

=icon-bar-a-hover
  background-color: $navbar-background
  color: #000

=facebook
  background: $facebook
  color: $white

=twitter
  background: $twiter
  color: $white

=google
  background: $google
  color: $white

=linkedin
  background: $linkedin
  color: $white

=youtube
  background: $youtube
  color: $white

//FOOTER MIXIN
=footer-main
  position: fixed
  left: 0
  bottom: 0
  width: 100%
  background-color: $footer-background
  color: $white
  text-align: center

//CURSOR EDIT MIXIN
=cursor1
  cursor: $cursor-removal

=cursor2
  cursor: $cursor-removal2

//text-colors
$red-text: #FF0000
$darkred-text: #C60505
$orange-text: #FF5733
$white: white

//background color
$background: #ECFFFE
$navbar-background: #E1F1F0
$footer-background: #E1F1F0

//social bar
$facebook: #3B5998
$twitter: #55ACEE
$google: #DD4B39
$linkedin: #007BB5
$youtube: #BB0000

//typography
$font-stack:    source-sans-pro, "Helvetica Neue", Helvetica, Arial, sans-serif
$font-stack-hover: "monospace"
$font-size: 30px
$h3-font-size: 25px
$h3-font-size-2: 20px
$font-weight-nav: 500
$font-weight-main: 400
$alignment: center
$h1-letter-spacing: 3px
$h2-letter-spacing: 3px
$navbar-letter-spacing: 2px

//borders
$border-original: 3px solid $red-text
$border-original2: 3px solid $orange-text
$border-modified: 2px solid $navbar-background
$border-radius: 30px
$border-radius2: 10px


//cursor
$cursor-removal: pointer
$cursor-removal2: default

//divs
$div-width: 400px
$div-width2: 800px
$div-align: auto

Ага ... Я только что понял, что у него, вероятно, было расширение .sass в файле, а не .scss ... Хороший

Derpanel 05.04.2018 13:38

Большое спасибо Джереми ... Не могу поверить, что совершил такую ​​ошибку новичка! Я ценю вашу помощь!

shaminder galla 05.04.2018 15:20

Другие вопросы по теме