Я уже использовал sass и у меня есть вопрос, касающийся его функциональности, который, я думаю, может или должен существовать в sass.
Можно ли вообще сделать что-то подобное и как:
$base-color: #ffffff;
.pink {
$base-color: #ec008c;
}
.green {
$base-color: #a4d20e;
}
a, .pink a, .green a {
color: $base-color;
}
Что означало бы, что я мог бы дать класс .pink
элементу <body>
, что сделало бы все элементы <a>
на этой странице "розовыми".Хотя этот упрощенный пример кажется чем-то, что SASS должен делать.
Это означает, что вышеприведенный scss будет компилироваться примерно так:
a {
color: #ffffff;
}
.pink a {
color: #ec008c;
}
.green a {
color: #ec008c;
}
Что, как я уже говорил, слишком упрощено, рассмотримследующее:
$base-color: #ffffff;
.pink {
$base-color: #ec008c;
}
.green {
$base-color: #a4d20e;
}
.pink, .green {
#header #nav li a {
color: $base-color;
}
}
Должно дать мне что-то вроде этого:
.pink #header #nav li a {
color: #ec008c;
}
.green #header #nav li a {
color: #a4d20e;
}
Это похоже на то, что должно быть выполнимо в SCSS / SASS и заплатит многодивидендов по более крупным проектам, как по времени кодирования, так и по удобству обслуживания.