Challenge - 5 Problems
Sass Conditional Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
📝 Syntax
intermediate2:00remaining
What color will the button have?
Given the following Sass code, what will be the background color of the button when $status is set to 'warning'?
SASS
$status: warning; button { @if $status == success { background-color: green; } @else if $status == error { background-color: red; } @else { background-color: yellow; } }
Attempts:
2 left
💡 Hint
Think about which condition matches the value 'warning'.
✗ Incorrect
The variable $status is 'warning'. The first condition checks for 'success' which is false. The second condition checks for 'error' which is also false. So the @else branch runs, setting background-color to yellow.
🧠 Conceptual
intermediate1:30remaining
Which statement about @else if and @else is true?
Choose the correct statement about how @else if and @else branches work in Sass conditionals.
Attempts:
2 left
💡 Hint
Think about the flow of conditional checks.
✗ Incorrect
@else if only runs if all previous conditions are false. @else runs if none of the previous conditions are true. @else cannot have a condition. @else if and @else must follow an @if.
❓ rendering
advanced2:00remaining
What color will the paragraph text be?
Given this Sass code, what color will the paragraph text have when $theme is 'dark'?
SASS
$theme: dark; p { @if $theme == light { color: black; } @else if $theme == dark { color: white; } @else { color: gray; } }
Attempts:
2 left
💡 Hint
Check which condition matches 'dark'.
✗ Incorrect
The $theme variable is 'dark'. The first condition is false, the second condition matches, so color is set to white.
❓ selector
advanced2:00remaining
Which selector will be styled when $device is 'tablet'?
Consider this Sass code. Which CSS selector will get the styles when $device is 'tablet'?
SASS
$device: tablet; .container { @if $device == mobile { display: block; } @else if $device == tablet { display: flex; } @else { display: grid; } }
Attempts:
2 left
💡 Hint
Match the $device value with the conditions.
✗ Incorrect
Since $device is 'tablet', the @else if branch matches and sets display to flex.
❓ accessibility
expert2:30remaining
How to use @else if for accessible color contrast?
You want to set text color based on background color variable $bg. Which Sass code ensures accessible contrast by choosing black text on light backgrounds and white text on dark backgrounds using @else if?
Attempts:
2 left
💡 Hint
Light backgrounds need dark text for contrast.
✗ Incorrect
Option D correctly sets black text for light backgrounds and white text for dark backgrounds, ensuring good contrast and accessibility.