Bird
Raised Fist0
Bootsrapmarkup~5 mins

Bootstrap SASS variable overrides

Choose your learning style10 modes available
Introduction

Bootstrap SASS variable overrides let you change Bootstrap's default styles easily. This helps you make your website look unique without rewriting all the CSS.

You want to change the main colors of your website using Bootstrap.
You need to adjust spacing or font sizes to match your brand style.
You want to customize Bootstrap buttons or alerts without editing Bootstrap files directly.
You want to keep Bootstrap updates easy by only changing variables, not core code.
Syntax
Bootsrap
$variable-name: new-value;
Place your variable overrides before importing Bootstrap's SASS files.
Use the exact variable names Bootstrap uses to override them correctly.
Examples
Change the main primary color to a bright orange-red.
Bootsrap
$primary: #ff5733;
Make the base font size a bit larger than the default.
Bootsrap
$font-size-base: 1.125rem;
Increase vertical and horizontal padding for buttons.
Bootsrap
$btn-padding-y: 0.75rem;
$btn-padding-x: 1.5rem;
Sample Program

This example shows how to override Bootstrap's primary color and base font size before importing Bootstrap's styles. Then it uses the new primary color for a heading and a custom button style that extends Bootstrap's button.

Bootsrap
@use "sass:color";

// Override Bootstrap variables before import
$primary: #0077cc;
$font-size-base: 1.125rem;

@import "bootstrap/scss/bootstrap";

body {
  font-family: Arial, sans-serif;
}

h1 {
  color: $primary;
  font-size: $font-size-base;
}

.btn-custom {
  @extend .btn;
  background-color: $primary;
  color: white;
  padding: 0.75rem 1.5rem;
  border-radius: 0.5rem;
  border: none;
  cursor: pointer;
}

.btn-custom:hover {
  background-color: color.scale($primary, $lightness: -10%);
}
OutputSuccess
Important Notes

Always override variables before importing Bootstrap's SASS files to ensure your changes take effect.

Use a SASS compiler like Dart Sass to process your SASS files into CSS.

Check Bootstrap's official documentation for the full list of variables you can override.

Summary

Override Bootstrap SASS variables by setting new values before importing Bootstrap.

This lets you customize colors, fonts, spacing, and more easily.

Keep your custom styles separate to make future Bootstrap updates simple.

Practice

(1/5)
1. What is the correct way to override a Bootstrap SASS variable like $primary color?
easy
A. Set $primary before importing Bootstrap's SASS files
B. Set $primary after importing Bootstrap's SASS files
C. Change the CSS file directly without using SASS variables
D. Override $primary inside the compiled CSS file

Solution

  1. Step 1: Understand Bootstrap SASS variable loading

    Bootstrap uses SASS variables during compilation, so variables must be set before importing Bootstrap's SASS files to take effect.
  2. Step 2: Apply variable override before import

    By setting $primary before the import, Bootstrap uses the new value instead of the default.
  3. Final Answer:

    Set $primary before importing Bootstrap's SASS files -> Option A
  4. Quick Check:

    Override variables before import = A [OK]
Hint: Always set variables before importing Bootstrap [OK]
Common Mistakes:
  • Setting variables after importing Bootstrap
  • Editing compiled CSS instead of SASS variables
  • Trying to override variables in CSS files
2. Which of the following is the correct syntax to override the Bootstrap SASS variable $font-size-base to 1.25rem?
easy
A. $font-size-base: 1.25rem !default;
B. $font-size-base: 1.25rem;
C. font-size-base: 1.25rem;
D. $font-size-base = 1.25rem;

Solution

  1. Step 1: Recall SASS variable syntax

    SASS variables use $variable-name: value; syntax without equals sign or !default when overriding.
  2. Step 2: Identify correct override syntax

    To override, simply assign $font-size-base: 1.25rem; before importing Bootstrap.
  3. Final Answer:

    $font-size-base: 1.25rem; -> Option B
  4. Quick Check:

    SASS variable override syntax = D [OK]
Hint: Use colon and semicolon, no equals sign for SASS variables [OK]
Common Mistakes:
  • Using equals sign instead of colon
  • Adding !default when overriding
  • Omitting the $ sign before variable name
3. Given this SASS code snippet, what will be the background color of a Bootstrap button?
$btn-primary-bg: #ff0000;
@import 'bootstrap';
medium
A. Black
B. Default Bootstrap blue
C. Transparent
D. Red (#ff0000)

Solution

  1. Step 1: Check variable override before import

    The variable $btn-primary-bg is set to red before importing Bootstrap, so Bootstrap uses this value.
  2. Step 2: Understand Bootstrap button background

    Bootstrap buttons use $btn-primary-bg for the primary button background color.
  3. Final Answer:

    Red (#ff0000) -> Option D
  4. Quick Check:

    Override variable before import changes button color = A [OK]
Hint: Override color variables before import to change styles [OK]
Common Mistakes:
  • Expecting default color despite override
  • Setting variable after import
  • Confusing variable names
4. You tried to override $spacer to 3rem but your Bootstrap layout spacing did not change. What is the most likely mistake?
medium
A. A, B, and D
B. You used $spacer = 3rem; instead of colon syntax
C. You set $spacer after importing Bootstrap SASS files
D. You forgot to recompile your SASS files after changes

Solution

  1. Step 1: Check variable override timing

    Setting $spacer after importing Bootstrap has no effect because variables must be set before import.
  2. Step 2: Verify syntax and compilation

    Using equals sign is invalid syntax and forgetting to recompile means changes won't apply.
  3. Step 3: Combine all errors

    Any of these mistakes can cause the override to fail, so all are likely causes.
  4. Final Answer:

    A, B, and D -> Option A
  5. Quick Check:

    Timing, syntax, and compilation errors cause override failure = C [OK]
Hint: Check override order, syntax, and recompile after changes [OK]
Common Mistakes:
  • Setting variables after import
  • Using wrong syntax with equals sign
  • Not recompiling SASS after changes
5. You want to customize Bootstrap's primary color and font size but keep your changes easy to update later. Which approach is best?
hard
A. Edit Bootstrap's original SASS files directly to change variables
B. Override variables in CSS after Bootstrap is loaded
C. Create a separate SASS file that sets $primary and $font-size-base before importing Bootstrap
D. Use JavaScript to change styles dynamically after page load

Solution

  1. Step 1: Understand maintainability best practices

    Editing Bootstrap's original files makes updates hard and error-prone.
  2. Step 2: Use separate SASS file for overrides

    Setting variables in a separate file before importing Bootstrap keeps customizations clean and easy to update.
  3. Step 3: Avoid CSS or JS overrides for variables

    CSS overrides can't change SASS variables, and JS changes styles after load, not at compile time.
  4. Final Answer:

    Create a separate SASS file that sets $primary and $font-size-base before importing Bootstrap -> Option C
  5. Quick Check:

    Separate override file before import = B [OK]
Hint: Keep overrides separate and before import for easy updates [OK]
Common Mistakes:
  • Editing Bootstrap source files directly
  • Trying to override variables in CSS
  • Using JavaScript for style changes instead of SASS
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