【发布时间】:2016-10-05 02:02:22
【问题描述】:
我对 sass 和 less(以及一般的 css)非常陌生,需要帮助将一些 less 转换为 sass。我读了this 的问题,但仍然不知道该怎么做。这个从less到sass的sn-p无法在sass中编译;你能告诉我正确的格式应该是什么。这是错误:
Error in plugin 'sass'
Message:
app\styles\mixins.scss
Error: Invalid CSS after ".dropdown-toggle": expected "{", was "&"
"&" may only be used at the beginning of a compound selector.
on line 12 of app/styles/mixins.scss
>> .open .dropdown-toggle& {
少
.button-variant(@color; @background; @border) {
color: @color;
background-color: @background;
border-color: @border;
&:hover,
&:focus,
&:active,
&.active,
.open .dropdown-toggle& {
color: @color;
background-color: darken(@background, 10%);
border-color: darken(@border, 12%);
}
&:active,
&.active,
.open .dropdown-toggle& {
background-image: none;
}
&.disabled,
&[disabled],
fieldset[disabled] & {
&,
&:hover,
&:focus,
&:active,
&.active {
background-color: @background;
border-color: @border;
}
}
}
SASS
@mixin button-variant($color, $background, $border) {
color: $color;
background-color: $background;
border-color: $border;
&:hover,
&:focus,
&:active,
&.active,
.open .dropdown-toggle& {
color: $color;
background-color: darken($background, 10%);
border-color: darken($border, 12%);
}
&:active,
&.active,
.open .dropdown-toggle& {
background-image: none;
}
&.disabled,
&[disabled],
fieldset[disabled] & {
&,
&:hover,
&:focus,
&:active,
&.active {
background-color: $background;
border-color: $border;
}
}
.badge {
color: $background;
background-color: $color;
}
}
【问题讨论】: