Bird
Raised Fist0
SASSmarkup~5 mins

Token-driven color palettes in SASS - Cheat Sheet & Quick Revision

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is a token-driven color palette in web development?
It is a way to define colors using named tokens (variables) that represent colors. This helps keep colors consistent and easy to update across a website or app.
Click to reveal answer
beginner
Why use tokens for colors instead of hardcoding hex values everywhere?
Tokens make it easy to change colors in one place and have the change apply everywhere. This saves time and avoids mistakes.
Click to reveal answer
beginner
How do you define a color token in Sass?
You create a variable with a name and assign it a color value, for example: $color-primary: #3498db;
Click to reveal answer
intermediate
What is the benefit of grouping color tokens in Sass maps?
Grouping tokens in maps helps organize colors by purpose or theme, making it easier to manage and use them in styles.
Click to reveal answer
intermediate
How can token-driven palettes improve accessibility?
By using tokens, you can adjust colors to meet contrast standards easily, ensuring text and backgrounds are readable for everyone.
Click to reveal answer
What is the main purpose of using color tokens in Sass?
ATo reduce file size
BTo make the code run faster
CTo add animations to colors
DTo keep colors consistent and easy to update
How do you define a color token in Sass?
Avar color-primary = #3498db;
Bcolor-primary = #3498db;
C$color-primary: #3498db;
Dcolor-primary: #3498db;
Which Sass feature helps organize multiple color tokens together?
AMaps
BFunctions
CMixins
DLoops
How does using token-driven palettes help with accessibility?
ABy making it easy to adjust colors for good contrast
BBy automatically adding alt text
CBy increasing font size
DBy disabling animations
If you want to change the main brand color site-wide, what should you do with token-driven palettes?
AChange every hex code manually
BChange the color token value once
CAdd a new CSS class
DUse inline styles
Explain how token-driven color palettes work and why they are useful in Sass.
Think about how changing one color can affect the whole site.
You got /4 concepts.
    Describe how token-driven palettes can help improve accessibility in web design.
    Focus on color contrast and readability.
    You got /4 concepts.

      Practice

      (1/5)
      1. What is the main purpose of using token-driven color palettes in Sass?
      easy
      A. To store colors in variables for easy reuse and consistency
      B. To write colors directly in CSS without variables
      C. To create animations with colors
      D. To import images as color backgrounds

      Solution

      1. Step 1: Understand what tokens are in Sass

        Tokens are variables that hold values, like colors, to reuse easily.
      2. Step 2: Identify the benefit of using tokens

        Using tokens keeps colors consistent and easy to update across the project.
      3. Final Answer:

        To store colors in variables for easy reuse and consistency -> Option A
      4. Quick Check:

        Color tokens = variables for consistent colors [OK]
      Hint: Tokens are variables holding colors for reuse [OK]
      Common Mistakes:
      • Thinking tokens are for animations
      • Confusing tokens with direct CSS colors
      • Assuming tokens import images
      2. Which of the following is the correct way to define a color token in Sass?
      easy
      A. primary-color = #3498db;
      B. $primary-color: #3498db;
      C. var(--primary-color: #3498db);
      D. color primary-color: #3498db;

      Solution

      1. Step 1: Recall Sass variable syntax

        Sass variables start with a dollar sign ($) followed by the name and value.
      2. Step 2: Check each option

        $primary-color: #3498db; uses correct Sass syntax: $primary-color: #3498db;. Others use invalid syntax.
      3. Final Answer:

        $primary-color: #3498db; -> Option B
      4. Quick Check:

        Sass variables start with $ [OK]
      Hint: Sass variables always start with $ [OK]
      Common Mistakes:
      • Using CSS variable syntax in Sass
      • Omitting the $ sign
      • Using equal sign instead of colon
      3. Given the Sass code:
      $color-primary: #ff0000;
      .button {
        background-color: $color-primary;
      }

      What color will the button background be in the browser?
      medium
      A. Red
      B. Green
      C. Blue
      D. Transparent

      Solution

      1. Step 1: Identify the token value

        The variable $color-primary is set to #ff0000, which is red.
      2. Step 2: Check usage in CSS

        The button's background-color uses $color-primary, so it will be red.
      3. Final Answer:

        Red -> Option A
      4. Quick Check:

        Variable $color-primary = #ff0000 (red) [OK]
      Hint: Match hex code #ff0000 to red color [OK]
      Common Mistakes:
      • Confusing hex codes with other colors
      • Ignoring variable usage
      • Assuming default color
      4. Identify the error in this Sass code snippet:
      $accent-color #00ff00;
      .text {
        color: $accent-color;
      }
      medium
      A. Missing semicolon after color property
      B. Variable name should not start with $
      C. Color value is invalid
      D. Missing colon after variable name

      Solution

      1. Step 1: Check variable declaration syntax

        Sass variables require a colon (:) between name and value.
      2. Step 2: Locate the error

        The code has $accent-color #00ff00; missing the colon after $accent-color.
      3. Final Answer:

        Missing colon after variable name -> Option D
      4. Quick Check:

        Variable declaration needs colon : [OK]
      Hint: Variable declarations need colon : after name [OK]
      Common Mistakes:
      • Forgetting colon in variable declaration
      • Removing $ from variable name
      • Assuming color value is wrong
      5. You want to create a token-driven color palette with light and dark modes using Sass variables. Which approach correctly switches colors based on a data-theme attribute on the body, with light mode as the default?
      hard
      A.
      $color-bg-light: #ffffff;
      $color-bg-dark: #000000;
      
      body[data-theme='light'] {
        background-color: $color-bg-light;
      }
      body[data-theme='dark'] {
        background-color: $color-bg-dark;
      }
      B.
      $color-bg-light: #ffffff;
      $color-bg-dark: #000000;
      
      body {
        background-color: $color-bg-light;
      }
      body[data-theme='dark'] {
        background-color: $color-bg-light;
      }
      C.
      $color-bg-light: #ffffff;
      $color-bg-dark: #000000;
      
      body {
        background-color: $color-bg-light;
        &[data-theme='dark'] {
          background-color: $color-bg-dark;
        }
      }
      D.
      $color-bg-light: #ffffff;
      $color-bg-dark: #000000;
      
      body {
        background-color: $color-bg-dark;
      }
      body[data-theme='light'] {
        background-color: $color-bg-light;
      }

      Solution

      1. Step 1: Understand how to nest selectors in Sass

        $color-bg-light: #ffffff;
        $color-bg-dark: #000000;
        
        body {
          background-color: $color-bg-light;
          &[data-theme='dark'] {
            background-color: $color-bg-dark;
          }
        }
        uses nesting with &[data-theme='dark'] inside body, which is valid Sass syntax.
      2. Step 2: Check color assignments for light and dark modes

        $color-bg-light: #ffffff;
        $color-bg-dark: #000000;
        
        body {
          background-color: $color-bg-light;
          &[data-theme='dark'] {
            background-color: $color-bg-dark;
          }
        }
        sets light mode as default and overrides background for dark mode correctly.
      3. Step 3: Compare other options

        $color-bg-light: #ffffff;
        $color-bg-dark: #000000;
        
        body[data-theme='light'] {
          background-color: $color-bg-light;
        }
        body[data-theme='dark'] {
          background-color: $color-bg-dark;
        }
        is valid CSS but not Sass nesting style;
        $color-bg-light: #ffffff;
        $color-bg-dark: #000000;
        
        body {
          background-color: $color-bg-light;
        }
        body[data-theme='dark'] {
          background-color: $color-bg-light;
        }
        sets dark mode to light color (wrong);
        $color-bg-light: #ffffff;
        $color-bg-dark: #000000;
        
        body {
          background-color: $color-bg-dark;
        }
        body[data-theme='light'] {
          background-color: $color-bg-light;
        }
        sets dark mode as default and light mode override, which is less common.
      4. Final Answer:

        Sass nested selectors with light default and dark override -> Option C
      5. Quick Check:

        Sass nesting with & and tokens for themes [OK]
      Hint: Use & to nest attribute selectors in Sass [OK]
      Common Mistakes:
      • Confusing CSS and Sass nesting syntax
      • Assigning wrong colors to themes
      • Not using tokens for colors