How to Find the SCSS Index of the element in the list?

Viewed 5778

Iam working on SCSS Loops and got stuck with a problem. The Problem is consider a list of colors.

$colors:'red','green','red','blue';

@each $color in $colors{
  $i:index($colors,$color);
  .cube:nth-child(#{$i}){
    background:$color;
  };
}

The Output of the above program is

.cube:nth-child(1) {
  background: "red";
}

.cube:nth-child(2) {
  background: "green";
}

.cube:nth-child(1) { // issue here unable to get index value 3
  background: "red"; 
}

.cube:nth-child(4) {
  background: "blue";
}

I am unable to get the index value 3. Can Someone help me to solve this issue. My question is

  1. how to get the index value of 3?
  2. Is it possible to get the index using each? if "YES" how?
  3. If not what's the alternative way?
1 Answers
Related