0
0
SASSmarkup~20 mins

Function definition with @function in SASS - Practice Problems & Coding Challenges

Choose your learning style9 modes available
Challenge - 5 Problems
🎖️
SASS Function Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
📝 Syntax
intermediate
2:00remaining
What is the output CSS of this SASS function?
Given the following SASS code, what is the output CSS after compilation?
SASS
@function double($n) {
  @return $n * 2;
}

.box {
  width: double(5rem);
  height: double(3rem);
}
A
.box {
  width: 10rem;
  height: 6rem;
}
B
.box {
  width: 7rem;
  height: 5rem;
}
C
.box {
  width: 5rem * 2;
  height: 3rem * 2;
}
D
.box {
  width: 25rem;
  height: 15rem;
}
Attempts:
2 left
💡 Hint
Remember that the function returns the number multiplied by 2, so 5rem becomes 10rem.
🧠 Conceptual
intermediate
2:00remaining
What error does this SASS function code produce?
Consider this SASS function code. What error will it cause when compiling?
SASS
@function add($a, $b) {
  $sum: $a + $b
  @return $sum;
}

.box {
  width: add(3rem, 2rem);
}
ARuntimeError: Undefined variable $sum
BTypeError: Cannot add two numbers
CNo error, compiles correctly
DSyntaxError: Missing semicolon after variable assignment
Attempts:
2 left
💡 Hint
Check the line where $sum is assigned. Is the syntax complete?
rendering
advanced
2:00remaining
What is the computed width of .container?
Given this SASS code with a function, what is the width value in the compiled CSS?
SASS
@function scale($size, $factor: 1.5) {
  @return $size * $factor;
}

.container {
  width: scale(4rem);
}
A
.container {
  width: 8rem;
}
B
.container {
  width: 1.5rem;
}
C
.container {
  width: 6rem;
}
D
.container {
  width: 4rem;
}
Attempts:
2 left
💡 Hint
The function multiplies the size by the factor, which defaults to 1.5.
selector
advanced
2:00remaining
Which option correctly uses a function to set color opacity?
Which SASS code correctly defines and uses a function to return a color with 50% opacity?
A
@function half-opacity($color) {
  @return rgba($color, 0.5);
}

.box {
  background-color: half-opacity(#ff0000);
}
B
@function half-opacity($color) {
  @return rgba($color, 50%);
}

.box {
  background-color: half-opacity(#ff0000);
}
C
@function half-opacity($color) {
  @return rgba($color, 5);
}

.box {
  background-color: half-opacity(#ff0000);
}
D
@function half-opacity($color) {
  @return rgba($color, '0.5');
}

.box {
  background-color: half-opacity(#ff0000);
}
Attempts:
2 left
💡 Hint
Opacity in rgba() is a number between 0 and 1, not a percentage or string.
accessibility
expert
3:00remaining
How can a SASS function improve accessible color contrast?
Which SASS function code snippet best helps create accessible text colors by adjusting brightness for contrast?
A
@function adjust-brightness($color, $amount) {
  @return darken($color, $amount);
}
B
@function adjust-brightness($color, $amount) {
  @return mix(black, $color, $amount);
}
C
@function adjust-brightness($color, $amount) {
  @return saturate($color, $amount);
}
D
@function adjust-brightness($color, $amount) {
  @return lighten($color, $amount);
}
Attempts:
2 left
💡 Hint
Mixing black with a color can darken it proportionally, helping contrast.