Всем привет! Я пытаюсь скомпилировать свой файл 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 после "@mixin h1-text {": expected "}" был "{" mixins.sass 1: // ТЕКСТОВЫЕ СМЕСИ 2: @mixin h1-text {3: color: $ red-text;
Я думаю, у вас проблема со строкой ** `// TEXT MIXINS ... она не может ее проанализировать.
К сожалению, я попытался удалить комментарий, и после этого ошибка все еще возникает.
Можете ли вы обновить пример кода, добавив в него внесенные вами изменения?
Удалите ** // TEXT MIXINS и `` ** '' в конце и добавьте ; после каждого объявления.
Привет @MichaelB. он не позволит мне обновить пример кода, хотя единственное отличие состоит в том, что первый комментарий // TEXT MIXINS удаляется, а также добавляется ";" до конца каждой строки.
@Derpanel ** добавляются переполнением стека, а не мной
Миксин должен выглядеть так: @mixin cursor2 { cursor: $cursor-removal2; } Ни больше ни меньше. Он должен работать, если вы напишете правильно. Я скопировал ваш код и отлично его скомпилировал.
@Derpanel точно может быть что-то не так с моим компилятором? скаут-приложение? так как я писал свои миксины так же, как и всегда ...
Вы что-то делаете не так. Начните с пустого файла, добавьте только одну переменную $color: red; и скомпилируйте. Если это не компилируется, замените компилятор. Если он компилируется, добавьте простой миксин - @mixin red{ color: $color; }. Продолжайте добавлять что-то с этим синтаксисом и посмотрите, где компилятор не работает.
@Derpanel Это проблема самих миксинов, поскольку я сделал то, что вы сказали, и документ компилируется нормально?
Вы используете синтаксис SCSS с расширением SASS, вот в чем проблема. Прочтите ответ Джереми, чтобы узнать о правильном синтаксисе SASS, или придерживайтесь своего синтаксиса, но измените расширение файла на .scss. Подробнее здесь: stackoverflow.com/a/27209555/1523418
На самом деле это не миксины, а должны быть классы






Удалите {} ... они вам не нужны
@mixin something
attribute: value
Привет, Маркус, спасибо за пример, хотя это не сработало
Вы уверены, что я только что скопировал, вставил ваш код и удалил все {}; и ваши комментарии. Для меня это сработало. Раньше у меня были похожие ошибки.
Я починил твой файл за тебя.
Найдите его в конце этого поста.
Основная проблема заключается в том, что вы смешали некоторый CSS (от строки 1 до 148) с остальной частью вашего файла Sass (от 148 до конца файла). Вы не можете просто скопировать вставку CSS в файл Sass. Вы должны адаптировать это.
Вот ваши проблемы:
**' (я думаю, это из-за
некоторый копипастинг), удалил его.@mixin - это ключевое слово SCSS, а не ключевое слово Sass, вместо этого вы должны использовать =, я заменил все ваши @mixin на ={}Теперь вот ваш файл 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 ... Хороший
Большое спасибо Джереми ... Не могу поверить, что совершил такую ошибку новичка! Я ценю вашу помощь!
Добавлять ; после каждой строки в CSS, например "color: $ red-text;"