Sass - diretiva @each
Descrição
Em @each , é definida uma variável que contém o valor de cada item em uma lista.
Sintaxe
@each $var in <list or map>
A sintaxe é brevemente explicada abaixo -
$var- Representa o nome da variável. @cada conjunto de regras$var a cada item da lista e produz os estilos usando o valor de $var.
<list or map>- Essas são expressões SassScript, que retornarão uma lista ou um mapa .
Exemplo
O exemplo a seguir demonstra o uso da diretiva @each -
<html>
<head>
<title>Control Directives & Expressions</title>
<link rel = "stylesheet" type = "text/css" href = "style.css"/>
</head>
<body>
<p class = "p_red">This is line one.</p>
<p class = "p_green">This is line two.</p>
<p class = "p_yellow">This is line three.</p>
<p class = "p_blue">This is line four.</p>
</body>
</html>
Em seguida, crie o arquivo style.scss .
style.scss
@each $color in red, green, yellow, blue {
.p_#{$color} {
background-color: #{$color};
}
}
Você pode dizer ao SASS para observar o arquivo e atualizar o CSS sempre que o arquivo SASS for alterado, usando o seguinte comando -
sass --watch C:\ruby\lib\sass\style.scss:style.css
A seguir, execute o comando acima; ele criará o arquivo style.css automaticamente com o seguinte código -
style.css
.p_red {
background-color: red;
}
.p_green {
background-color: green;
}
.p_yellow {
background-color: yellow;
}
.p_blue {
background-color: blue;
}
Resultado
Vamos realizar as seguintes etapas para ver como funciona o código fornecido acima -
Salve o código html fornecido acima no arquivo @ each.html .
Abra este arquivo HTML em um navegador, uma saída é exibida conforme mostrado abaixo.