Я пытаюсь сделать кнопку, смешивающуюся как это:
=default_button(!lighter, !darker)
:border= 1px !lighter solid
:background-color #e3e3e3
:background= -webkit-gradient(linear, 0 0, 0 100%, from(!lighter), to(!darker)) repeat-x, #d0581e
:background= -moz-linear-gradient(90deg, !darker, !lighter) repeat-x scroll 0 0 #d0581e
:filter= progid:DXImageTransform.Microsoft.gradient(startColorstr='!lighter', endColorstr='!darker')
:-ms-filter= "progid:DXImageTransform.Microsoft.gradient(startColorstr='!lighter', endColorstr='!darker')"
:zoom 1
:margin 0 0 0 0
:width auto
:padding 2px 14px 2px 14px
:border-radius 10px
:-webkit-border-radius 10px
:-moz-border-radius 10px
:color #FFF
Когда я компилирую дерзость, я получаю эту ошибку для начала строк - фильтра и - фильтр мс:
ДЕРЗОСТЬ:: SyntaxError: Ожидаемый rparen маркер, был single_eq маркер
Я вполне уверен, это - мое размещение =, но я не абсолютно уверен, как записать это правильно. Это работает, если я передаю шестнадцатеричные значения вместо! легче! более темный, потому что затем я могу удалить = знак как так:
:filter progid:DXImageTransform.Microsoft.gradient(startColorstr='#F89F16', endColorstr='#d0581e')
:-ms-filter "progid:DXImageTransform.Microsoft.gradient(startColorstr='#F89F16', endColorstr='#d0581e')"
Решил это вот так, но все еще ищу альтернативные предложения по лучшему пути ...
=default_button(!lighter, !darker)
text-shadow= 1px 1px 3px darken(!darker, 8)
border= 1px !darker solid
background-color= !lighter
background= -webkit-gradient(linear, 0 0, 0 100%, from(!lighter), to(!darker)) repeat-x, !darker
background= -moz-linear-gradient(90deg, !darker, !lighter) repeat-x scroll 0 0 !darker
-ms-filter = "progid:DXImageTransform.Microsoft.gradient(startColorstr='#{!lighter}', endColorstr='#{!darker}')"
:zoom 1
:margin 0 0 0 0
:width auto
Синтаксис Sass изменился с тех пор, как этот ответ был первоначально опубликован. Современный синтаксис sass (с отступом) выглядит следующим образом:
=default_button($lighter, $darker)
text-shadow: 1px 1px 3px darken($darker, 8)
border: 1px $darker solid
background-color: $lighter
background: -webkit-gradient(linear, 0 0, 0 100%, from($lighter), to($darker)) repeat-x, $darker
background: -moz-linear-gradient(90deg, $darker, $lighter) repeat-x scroll 0 0 $darker
-ms-filter: unquote("progid:DXImageTransform.Microsoft.gradient(startColorstr='#{$lighter}', endColorstr='#{$darker}')")
zoom: 1
margin: 0 0 0 0
width: auto
Обновите синтаксис, чтобы использовать :
вместо =
для определений свойств:
=mixin($variable)
property: value
property: $variable
Ознакомьтесь с Справочник по SASS , хотя примеры представлены в стиле SCSS, а не в стиле SASS с отступом . Полный индекс документации SASS .