--- id: 587d7dbe367417b2b2512bb8 title: Use @if and @else to Add Logic To Your Styles required: - src: 'https://cdnjs.cloudflare.com/ajax/libs/sass.js/0.10.9/sass.sync.min.js' raw: true challengeType: 0 videoUrl: '' localeTitle: Use @if e @else para adicionar lógica aos seus estilos --- ## Description
A diretiva @if no Sass é útil para testar um caso específico - funciona da mesma forma que a instrução if em JavaScript.
@mixin make-bold ($ bool) {
@if $ bool == true {
intensidade da fonte: Negrito;
}
}
E, assim como no JavaScript, @else if e @else test para mais condições:
@mixin text-effect ($ val) {
@if $ val == danger {
cor vermelha;
}
@else if $ val == alert {
cor amarela;
}
@else if $ val == success {
cor verde;
}
@outro {
cor preta;
}
}
## Instructions
Crie um mixin chamado border-stroke que use um parâmetro $val . O mixin deve verificar as seguintes condições usando @if , @else if e @else :
luz - 1px preto sólido
médio - preto sólido 3px
pesado - preto sólido de 6px
nenhum - sem fronteira
## Tests
```yml tests: - text: Seu código deve declarar um mixin chamado border-stroke que tenha um parâmetro chamado $val . testString: 'assert(code.match(/@mixin\s+?border-stroke\s*?\(\s*?\$val\s*?\)\s*?{/gi), "Your code should declare a mixin named border-stroke which has a parameter named $val.");' - text: Seu mixin deve ter uma instrução @if para verificar se $val é leve e para definir a border como 1px em preto sólido. testString: 'assert(code.match(/@if\s+?\$val\s*?===?\s*?light\s*?{\s*?border\s*?:\s*?1px\s+?solid\s+?black\s*?;\s*?}/gi), "Your mixin should have an @if statement to check if $val is light, and to set the border to 1px solid black.");' - text: Seu mixin deve ter uma declaração @else if para verificar se $val é médio e para definir a border como 3px em preto sólido. testString: 'assert(code.match(/@else\s+?if\s+?\$val\s*?===?\s*?medium\s*?{\s*?border\s*?:\s*?3px\s+?solid\s+?black\s*?;\s*?}/gi), "Your mixin should have an @else if statement to check if $val is medium, and to set the border to 3px solid black.");' - text: Seu mixin deve ter uma instrução @else if para verificar se $val é pesado e para definir a border como preto sólido de 6px. testString: 'assert(code.match(/@else\s+?if\s+?\$val\s*?===?\s*?heavy\s*?{\s*?border\s*?:\s*?6px\s+?solid\s+?black\s*?;\s*?}/gi), "Your mixin should have an @else if statement to check if $val is heavy, and to set the border to 6px solid black.");' - text: Seu mixin deve ter uma instrução @else para definir a border como none. testString: 'assert(code.match(/@else\s*?{\s*?border\s*?:\s*?none\s*?;\s*?}/gi), "Your mixin should have an @else statement to set the border to none.");' ```
## Challenge Seed
```html
```
## Solution
```js // solution required ```