У меня есть список классов в паре с цветами, я хотел бы задать разные свойства (color
, background
, border-color
, ...) с определенными цветами внутри mixin.Stylus mixins block
Пример
colorHome = #FFF
colorParam = #999
colorDash = #000
links = {
'home': colorHome,
'param': colorParam,
'dash': colorDash
}
.dashboard-menu li
border 1px solid
+addLinks()
color clr
background clr
border-color clr
выведет на
.dashboard-menu li {
border: 1px solid;
}
.dashboard-menu li.home {
color: #fff;
background: #fff;
border-color: #fff;
}
.dashboard-menu li.param {
color: #999;
background: #999;
border-color: #999;
}
.dashboard-menu li.dash {
color: #000;
background: #000;
border-color: #000;
}
Mixin я сейчас, используя блок.
addLinks()
for key, value in links
clr = value
&.{key}
{block}
.dashboard-menu li
border 1px solid
+addLinks()
color clr
background clr
border-color clr
Но по какой-то причине, clr
устанавливается в первый цвет (colorHome/#FFF) для background
и border-color
, и устанавливается на последний цвет (colorDash/# 000) для color
.
Выход
.dashboard-menu li {
border: 1px solid;
}
.dashboard-menu li.home {
color: #000;
background: #fff;
border-color: #fff;
}
.dashboard-menu li.param {
color: #000;
background: #fff;
border-color: #fff;
}
.dashboard-menu li.dash {
color: #000;
background: #fff;
border-color: #fff;
}
Учитывая блок Примеси относительно новостей, они могут быть использованы для достижения того, что я хочу? Или я должен использовать использование совершенно другого решения?
Thanks
выглядит хорошо для меня. это не работает? – floww
Если вы посмотрите на вывод, фон и цвет границы всегда одинаковы (#FFF), когда они должны быть #FFF для .home, # 999 для .param и # 000 для .dash. Я установил вывод, который хотел бы (сразу после примера) – sayam