Bird
Raised Fist0
Tailwindmarkup~20 mins

Purging unused styles in Tailwind - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Tailwind Purge Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
1:30remaining
What is the main purpose of purging unused styles in Tailwind CSS?
Why do developers use purging in Tailwind CSS projects?
ATo convert CSS classes into inline styles in HTML
BTo add more utility classes automatically during build
CTo remove unused CSS classes and reduce the final CSS file size
DTo disable responsive design features in Tailwind
Attempts:
2 left
💡 Hint
Think about how purging affects the size and performance of your website.
📝 Syntax
intermediate
2:00remaining
Which Tailwind config snippet correctly enables purging for HTML and JS files?
Select the correct content array in tailwind.config.js to purge unused styles from HTML and JavaScript files.
Tailwind
module.exports = {
  content: [
    // Your answer here
  ],
  theme: {
    extend: {},
  },
  plugins: [],
}
A["./src/**/*.{html,js}"]
B["./src/**/*.css"]
C["./src/**/*.{html,css}"]
D["./src/**/*.{js,json}"]
Attempts:
2 left
💡 Hint
You want to scan files that contain Tailwind class names, usually HTML and JS files.
❓ rendering
advanced
1:30remaining
What will be the size difference after purging unused styles in this Tailwind project?
Given a project with 1000 Tailwind utility classes in source files but only 100 are used in HTML, what happens to the CSS file size after purging?
AThe CSS file size will be roughly 10% of the original size
BThe CSS file size will remain the same
CThe CSS file size will increase due to added purge comments
DThe CSS file size will be zero because all classes are removed
Attempts:
2 left
💡 Hint
Purging removes unused classes, so the size depends on how many classes remain.
❓ selector
advanced
2:00remaining
Which Tailwind CSS class will NOT be removed by purge if used dynamically in JavaScript?
You have this JavaScript code: const btnClass = `bg-${color}-500`; where color can be 'red' or 'blue'. Which class must be added to tailwind.config.js safelist to avoid purging?
Abg-red and bg-blue
Bbg-${color}-500
Cbg-500-red and bg-500-blue
Dbg-red-500 and bg-blue-500
Attempts:
2 left
💡 Hint
Purge cannot detect dynamic class names unless explicitly safelisted.
❓ accessibility
expert
2:30remaining
How does purging unused styles affect accessibility in Tailwind projects?
Consider a Tailwind project where purging removes unused utility classes. What is a potential accessibility risk if purging is misconfigured?
APurging automatically adds ARIA attributes to elements
BImportant focus or visibility classes might be removed, breaking keyboard navigation or screen reader support
CPurging disables color contrast checks in browsers
DPurging converts all text to uppercase, harming readability
Attempts:
2 left
💡 Hint
Think about what happens if classes controlling focus or visibility are removed.

Practice

(1/5)
1. What is the main purpose of purging unused styles in Tailwind CSS?
easy
A. To remove unused CSS classes and make the site load faster
B. To add more CSS classes automatically
C. To change the colors of the website
D. To create new HTML elements

Solution

  1. Step 1: Understand what purging means

    Purging means removing things that are not needed. In Tailwind CSS, it removes unused styles.
  2. Step 2: Know why removing unused styles helps

    Removing unused styles makes the CSS file smaller, so the website loads faster.
  3. Final Answer:

    To remove unused CSS classes and make the site load faster -> Option A
  4. Quick Check:

    Purging = Remove unused styles = Faster site [OK]
Hint: Purging means removing unused CSS to speed up loading [OK]
Common Mistakes:
  • Thinking purging adds styles instead of removing
  • Confusing purging with changing colors or layout
  • Believing purging creates new HTML elements
2. Which Tailwind config option tells Tailwind where to look for used CSS classes to purge?
easy
A. theme
B. content
C. plugins
D. variants

Solution

  1. Step 1: Identify the config option for purging

    The content option lists files where Tailwind looks for class names to keep.
  2. Step 2: Understand other options

    theme controls design tokens, plugins add features, variants control responsive states, so they don't control purging.
  3. Final Answer:

    content -> Option B
  4. Quick Check:

    content = files to scan for classes [OK]
Hint: Remember: content = where Tailwind looks for classes [OK]
Common Mistakes:
  • Choosing theme instead of content
  • Confusing plugins with purging config
  • Using variants option wrongly
3. Given this Tailwind config snippet:
{
  content: ['./src/**/*.html'],
  theme: { extend: {} },
  plugins: []
}

Which files will Tailwind scan to keep CSS classes?
medium
A. All files in src folder and subfolders with .html extension
B. Only files named index.html in src folder
C. All JavaScript files in src folder
D. No files will be scanned

Solution

  1. Step 1: Understand the glob pattern './src/**/*.html'

    This pattern means all .html files inside src and any subfolders.
  2. Step 2: Match options with pattern meaning

    All files in src folder and subfolders with .html extension matches the pattern exactly. Options B and C are too narrow or wrong file types. No files will be scanned is incorrect.
  3. Final Answer:

    All files in src folder and subfolders with .html extension -> Option A
  4. Quick Check:

    ./src/**/*.html = all .html files in src and subfolders [OK]
Hint: ** means any folder depth, *.html means all HTML files [OK]
Common Mistakes:
  • Thinking only top-level files are scanned
  • Confusing file extensions scanned
  • Assuming no files scanned without explicit mention
4. You set the content option incorrectly as ['./src/*.js'] but your classes are in HTML files inside subfolders. What problem will occur?
medium
A. Tailwind will include all styles correctly
B. Tailwind will generate duplicate CSS classes
C. Tailwind will throw a syntax error
D. Tailwind will purge needed styles causing missing styles on the site

Solution

  1. Step 1: Analyze the content pattern './src/*.js'

    This pattern only scans JavaScript files directly inside src folder, not HTML or subfolders.
  2. Step 2: Understand impact on purging

    Since HTML files with classes are not scanned, Tailwind thinks those classes are unused and removes them, causing missing styles.
  3. Final Answer:

    Tailwind will purge needed styles causing missing styles on the site -> Option D
  4. Quick Check:

    Wrong content path = missing styles after purge [OK]
Hint: Content must match all files with classes to avoid missing styles [OK]
Common Mistakes:
  • Expecting Tailwind to scan files not listed
  • Thinking wrong content causes errors instead of missing styles
  • Assuming duplicate CSS classes will be generated
5. You want to purge unused styles but keep some dynamic classes added by JavaScript like bg-red-500 and text-xl. How can you ensure these classes are not removed?
hard
A. Write these classes directly in your HTML files only
B. Remove the content option entirely
C. Add these classes to the safelist option in Tailwind config
D. Use a plugin to disable purging

Solution

  1. Step 1: Understand dynamic classes and purging

    Classes added by JavaScript are not in HTML files, so Tailwind may remove them during purge.
  2. Step 2: Use safelist option to keep classes

    The safelist option lets you list classes to always keep, even if not found in scanned files.
  3. Final Answer:

    Add these classes to the safelist option in Tailwind config -> Option C
  4. Quick Check:

    Safelist = keep dynamic classes safe from purge [OK]
Hint: Use safelist to protect dynamic classes from purging [OK]
Common Mistakes:
  • Removing content option disables purging but is not recommended
  • Assuming writing classes in HTML fixes dynamic JS classes
  • Thinking disabling purging plugin is best solution
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