Вы неправильно используете миксины, как указано в документации sass, миксины должны содержать объявления.
Некоторые вещи в CSS писать немного утомительно, особенно с CSS3
и многие существующие префиксы поставщиков. Mixin позволяет создавать группы
CSS-объявлений, которые вы хотите использовать на своем сайте. Вы
может даже передавать значения, чтобы сделать ваш миксин более гибким Хорошее использование
из миксина для префиксов вендора. Вот пример для преобразования.
Таким образом, наличие mixins, не имеющих значения для их свойства, приведет к ошибке.
Если вы вернете логику, она будет работать. Вы также можете добавить больше переменных в мой пример, скажем, для размера или типа границы.
@mixin inputBorder($color) {
border: 2px solid $color;
}
input[type="text"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="date"],
input[type="time"] {
@include inputBorder(#ccc);
&:hover {
@include inputBorder(#000);
}
&:focus {
@include inputBorder(blue);
}
&:active {
@include inputBorder(red);
}
}
Вы также можете использовать пример @josephWebber, если хотите изменить только цвет границы.