Directiva @for în SASS
Cu ajutorul directivei @for
se pot genera anumite stiluri
într-o cantitate specificată
de o variabilă-contor.
Prima variantă de scriere a @for arată astfel:
@for $var from (început) through (sfârșit)
În acest caz, în interval sunt incluse strict valorile (început) și (sfârșit). Merită atenție faptul că (început) și (sfârșit) - trebuie să returneze numere întregi, deoarece ele stabilesc direcția de numărare, adică dacă (început) este mai mic decât (sfârșit), contorul va crește și, în consecință, dacă este invers - va scădea.
Să analizăm funcționarea directivei @for
în prima variantă de sintaxă
pe următorul exemplu:
@for $count from 1 through 5 {
.li-#{$count} {
width: $count + px;
}
}
Rezultatul compilării:
.li-1 {
width: 1px;
}
.li-2 {
width: 2px;
}
.li-3 {
width: 3px;
}
.li-4 {
width: 4px;
}
.li-5 {
width: 5px;
}
În a doua variantă, scrierea arată astfel:
@for $var from (început) to (sfârșit)
Însă aici valoarea (sfârșit) este exclusă.
Să luăm exemplul anterior și să-l scriem în a doua variantă:
@for $count from 1 to 5 {
.li-#{$count} {
width: $count + px;
}
}
Acum acordați atenție codului rezultat:
.li-1 {
width: 1px;
}
.li-2 {
width: 2px;
}
.li-3 {
width: 3px;
}
.li-4 {
width: 4px;
}
Spuneți, care va fi rezultatul compilării următorului cod:
@for $var from 5 through 1 {
li-#{$var} {
padding: 10 * $var + px;
}
}
Spuneți, care va fi rezultatul compilării următorului cod:
@for $var from 1 to 3 {
.navbar-link-#{$var} {
color: blue;
width: 10px * $var;
}
}