Bird
Raised Fist0
SASSmarkup~5 mins

Number types and units in SASS

Choose your learning style10 modes available
Introduction

Numbers in Sass help you control sizes, spaces, and colors. Units tell the browser what those numbers mean, like pixels or percentages.

Setting the width or height of a box in pixels or percentages.
Defining font sizes using rem or em units for better scaling.
Creating spacing like margins and padding with units.
Adjusting colors with numbers for opacity or lightness.
Using calculations to combine different units for responsive design.
Syntax
SASS
$variable: 10px;
$percentage: 50%;
$number: 1.5;
$em-size: 2em;

Numbers can have units like px, %, em, rem, vh, vw, etc.

Unitless numbers are just plain numbers without any unit.

Examples
This sets a width of 100 pixels.
SASS
$width: 100px;
This is a unitless number, often used for opacity or ratios.
SASS
$opacity: 0.5;
This sets font size relative to the root font size.
SASS
$font-size: 1.2rem;
This sets margin as a percentage of the parent element.
SASS
$margin: 10%;
Sample Program

This Sass code sets base font size and scales the heading size using numbers and units. It uses rem for spacing and pixels for font size calculation.

SASS
@use 'sass:math';

$base-font-size: 16px;
$scale-factor: 1.25;

body {
  font-size: $base-font-size;
  margin: 2rem;
}

h1 {
  font-size: math.round($base-font-size * $scale-factor * 10) / 10;
  margin-bottom: 1.5rem;
}

p {
  font-size: 1rem;
  line-height: 1.5;
  margin-bottom: 1rem;
}
OutputSuccess
Important Notes

Always use units when needed to avoid errors in calculations.

You can do math with numbers and units in Sass, but units must be compatible.

Use unitless numbers for things like opacity or z-index where units don't apply.

Summary

Numbers in Sass can have units like px, %, em, rem, or be unitless.

Units tell the browser how to interpret the number.

Use numbers and units to control sizes, spacing, and other styles precisely.

Practice

(1/5)
1. Which of the following is a valid Sass number with a unit?
easy
A. 20pixels
B. 12px
C. 15percent
D. 30ptx

Solution

  1. Step 1: Understand Sass number units

    Sass supports standard CSS units like px, %, em, rem, etc.
  2. Step 2: Check each option for valid unit

    12px uses a valid unit px. Others use invalid or misspelled units.
  3. Final Answer:

    12px -> Option B
  4. Quick Check:

    Valid CSS unit = 12px [OK]
Hint: Look for standard CSS units like px, %, em, rem [OK]
Common Mistakes:
  • Confusing 'percent' with '%' unit
  • Using non-standard unit names like 'pixels'
  • Misspelling units like 'ptx'
2. Which Sass number is written with correct syntax?
easy
A. 5em
B. 15 rems
C. 20 %
D. 10 px

Solution

  1. Step 1: Check spacing between number and unit

    Sass numbers must have no space between the number and unit.
  2. Step 2: Validate each option

    5em is correct with no space. Others have spaces or invalid units.
  3. Final Answer:

    5em -> Option A
  4. Quick Check:

    No space between number and unit = 5em [OK]
Hint: No spaces allowed between number and unit in Sass [OK]
Common Mistakes:
  • Adding space between number and unit
  • Using plural forms like 'rems'
  • Confusing unit syntax with CSS property values
3. What will be the output of this Sass code?
$width: 10px * 2;
.result {
  width: $width;
}
medium
A. width: 10px2;
B. width: 10px;
C. width: 20px;
D. width: 20;

Solution

  1. Step 1: Multiply number with unit by a unitless number

    Multiplying 10px by 2 doubles the value but keeps the unit.
  2. Step 2: Resulting value and unit

    The result is 20px, which is valid CSS for width.
  3. Final Answer:

    width: 20px; -> Option C
  4. Quick Check:

    10px * 2 = 20px [OK]
Hint: Multiply unit number by unitless number keeps unit [OK]
Common Mistakes:
  • Concatenating number and unit as string
  • Losing unit after multiplication
  • Expecting unit to change or disappear
4. Identify the error in this Sass code:
$height: 50px + 10;
.box {
  height: $height;
}
medium
A. Adding a unitless number to a number with unit causes error
B. Variable name cannot start with $
C. Missing semicolon after variable declaration
D. Units must be written in uppercase

Solution

  1. Step 1: Check operation between numbers with and without units

    Sass cannot add a unitless number to a number with units directly.
  2. Step 2: Identify the error cause

    Adding 50px and 10 (unitless) causes a unit mismatch error.
  3. Final Answer:

    Adding a unitless number to a number with unit causes error -> Option A
  4. Quick Check:

    Unit mismatch in addition = error [OK]
Hint: Cannot add unitless number to number with unit directly [OK]
Common Mistakes:
  • Assuming variable names can't start with $
  • Forgetting semicolons (Sass allows optional semicolons)
  • Thinking units are case sensitive
5. You want to create a responsive padding that is 2rem on small screens and 5% on large screens using Sass variables. Which approach correctly defines and uses these units?
hard
A.
$small-padding: 2rem;
$large-padding: 5%;
.container {
  padding: calc($small-padding + $large-padding);
}
B.
$small-padding: 2;
$large-padding: 5;
.container {
  padding: $small-padding rem;
  @media (min-width: 768px) {
    padding: $large-padding %;
  }
}
C.
$small-padding: 2rem;
$large-padding: 5%;
.container {
  padding: $small-padding + $large-padding;
}
D.
$small-padding: 2rem;
$large-padding: 5%;
.container {
  padding: $small-padding;
  @media (min-width: 768px) {
    padding: $large-padding;
  }
}

Solution

  1. Step 1: Define variables with units included

    Variables must include units like 2rem and 5% directly.
  2. Step 2: Use variables correctly in media queries

    Apply $small-padding normally and override with $large-padding inside media query.
  3. Step 3: Avoid invalid syntax

    The other options misuse units or try invalid operations like adding different units.
  4. Final Answer:

    Defines variables with units and uses media queries -> Option D
  5. Quick Check:

    Variables with units + media query = responsive padding [OK]
Hint: Include units in variables; use media queries to switch values [OK]
Common Mistakes:
  • Trying to add numbers with different units
  • Writing units outside variables incorrectly
  • Using calc() with Sass variables without interpolation
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard