我有一个包含值$box-shadow
10px 10px 1px 0 rgba(0,0,0,.3);
我想定义另一个变量$box-shadow-alt
,其中h-shadow
属性(本例中为前10px)应与原始变量中的属性相反。是否有一种Sassy方法只更改多属性定义的一个属性,而不重新声明整个变量?
为了证明,这应该是最终结果:
$box-shadow: 10px 10px 1px 0 rgba(0,0,0,.3);
$box-shadow-alt: -10px 10px 1px 0 rgba(0,0,0,.3);
答案 0 :(得分:2)
您的变量包含一个列表。这意味着您可以使用任何列表操作函数对其执行操作。您在此处需要的功能是set-nth
和nth
。
$box-shadow: 10px 10px 1px 0 rgba(0,0,0,.3);
$box-shadow-alt: set-nth($box-shadow, 1, nth($box-shadow, 1) * -1);