Możesz spróbować #. Miałem podobny problem z wstawek i wymienia
@mixin p($value, $position: a, $unit: $rhythm-unit){
$vallist:();
@if length($value) > 1 {
@each $sval in $value {
$sval: 0 !default;
$vallist: append($vallist, #{$sval}#{$unit});
}
padding: $vallist;
} @else{
@if $position == t {
padding-top: $value+$unit;
} @else if $position == r {
padding-right: $value+$unit;
} @else if $position == b {
padding-bottom: $value+$unit;
} @else if $position == l {
padding-left: $value+$unit;
} @else {
padding: $value+$unit;
}
}
}
Problemem było
append($vallist, $sval+$unit);
Zawsze dodane cytaty wokół tych wartości, na przykład "1rem" "1,25rem", co nie jest poprawną składnią css.
Wymieniłem go:
append($vallist, #{$sval}#{$unit});
Jak widać używam # -znak z {} i + to nie jest konieczne dłużej. Bardzo interesujące jest to, że pojawia się tylko z listami/dopisywaniem, jak można zobaczyć w mojej zewnętrznej. Można go znaleźć na stronie odniesienia sass Division and slash Jeśli chcesz używać zmiennych wraz ze zwykłym CSS /, możesz użyć # {} do wstawienia ich.Na przykład: p { $ rozmiar czcionki: 12 pikseli; $ wysokość linii: 30 pikseli; czcionka: # {$ font-size}/# {$ line-height}; }
Nadzieja pomaga
Tak, koniec cytatu jest prawidłowa odpowiedź! Przeczytaj więcej na: http://sass-lang.com/documentation/Sass/Script/Functions.html#unquote-instance_method. Również nie wiadomo, od 9 grudnia 2015 Sass zmienił pewne sposoby użycia # {} i cytatów: http://sass.logdown.com/posts/308328-cleaning-up-interpolation –