Sass - Argumentos do Mixin
Descrição
Os valores de SassScript podem ser considerados como argumentos em mixins, que são passados quando o mixin é incluído e estão disponíveis como variáveis dentro do mixin. O argumento é o nome de uma variável, que é separada por vírgula ao definir um mixin. Existem dois tipos de argumentos, como -
- Argumentos de Palavras-Chave
- Argumentos Variáveis
Argumentos de Palavras-Chave
O argumento de palavra-chave explícita pode ser usado para incluir em mixins. Os argumentos, que são nomeados, podem ser passados em qualquer ordem e os valores padrão do argumento podem ser omitidos.
Por exemplo, crie um arquivo SASS com o seguinte código -
@mixin bordered($color, $width: 2px) {
color: #77C1EF;
border: $width solid black;
width: 450px;
}
.style {
@include bordered($color:#77C1EF, $width: 2px);
}
O código acima será compilado no arquivo CSS conforme mostrado abaixo -
.style {
color: #77C1EF;
border: 2px solid black;
width: 450px;
}
Argumentos Variáveis
O argumento variável é usado para passar qualquer número de argumentos ao mixin. Ele contém argumentos de palavra-chave passados para a função ou mixin. Argumentos de palavras-chave passados para o mixin podem ser acessados usando a função de palavras-chave ($ args) que retorna valores mapeados para String.
Por exemplo, crie um arquivo SASS com o seguinte código -
@mixin colors($background) {
background-color: $background;
}
$values: magenta, red, orange;
.container {
@include colors($values...);
}
O código acima será compilado no arquivo CSS conforme mostrado abaixo -
.container {
background-color: magenta;
}
Exemplo
O exemplo a seguir demonstra o uso de argumentos no arquivo SCSS -
argument.htm
<html>
<head>
<title> Mixin example of sass</title>
<link rel = "stylesheet" type = "text/css" href = "argument.css"/>
</head>
<body>
<div class = "style">
<h1>Example using arguments</h1>
<p>Different Colors</p>
<ul>
<li>Red</li>
<li>Green</li>
<li>Blue</li>
</ul>
</div>
</body>
</html>
Em seguida, crie o arquivo argument.scss .
argument.scss
@mixin bordered($width: 2px) {
background-color: #77C1EF;
border: $width solid black;
width: 450px;
}
.style {
@include bordered(2px);
}
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\argument.scss:argument.css
A seguir, execute o comando acima; ele criará o arquivo argument.css automaticamente com o seguinte código -
style.css
.style {
background-color: #77C1EF;
border: 2px solid black;
width: 450px;
}
Resultado
Vamos realizar as seguintes etapas para ver como funciona o código fornecido acima -
Salve o código html fornecido acima em argument.htm Arquivo.
Abra este arquivo HTML em um navegador, uma saída é exibida conforme mostrado abaixo.