0

我正在尝试为列表background-color中的每个%li标签分配一个不同的标签。我希望这些颜色要么使用颜色的阴影,要么使用两种指定颜色之间的渐变。很像非常受欢迎的Clear。我熟悉使用 sass 使颜色变亮和变暗的能力......

$this_color: darken($that_color, 10%)

但除此之外,我不知道如何创造我正在寻找的影响。视觉上这是我想要做的:

%ul
    %li full color
    %li darken 5%
    %li darken 10%
    ...
4

2 回答 2

2

这是一种在循环中一一更改颜色的方法
http://jsfiddle.net/STuD5/1/

于 2012-04-26T06:56:32.560 回答
2
// set your color
$backgroundColor: red

// set the scale/increment for the function
$backgroundColorScale: 8

// number of items in your list
$numberOfItemsInList: 10

// here's a custom function to change the color
// but you could make this fairly advanced
// and shift color, saturate, etc.
@function -modify-bg($bgcolor, $counter, $depth: $backgroundColorScale)
  @return lighten($backgroundColor, ($i * $backgroundColorScale))

// here's the loop that steps through LIs and assigns each a new bg
$i: 0
@while $i < $numberOfItemsInList
  li:nth-child(#{$i})
    background-color: -modify-bg($backgroundColor, $i)
  $i: $i + 1
于 2012-05-01T05:00:04.937 回答