Theme
Bootstrap 5 Theme
Theming system enables you to customize the appearance of all MDB components.
Appearance customization options enable you to create skins for your Bootstrap 5 project. Use predefined dark theme, light theme or create custom themes.
See an example of a dark-theme created using our theme system.
Create a new theme
Creating a theme requires recompiling the scss styles, for this purpose we recommend using Webpack, Vite or Parcel starter.
Creating a new theme requires that you define primary and secondary colors for your application. We prepared functions and mixins that will help you to create a ready to use theme using these colors.
Go to your project created with one of MDB Starter
, open
styles.scss
file located in src/scss/
folder and replace the code
there with the following code:
@import '~mdb-ui-kit/src/scss/mdb.pro.scss';
$my-theme-primary: #9c27b0; // theme primary color, change this value to customize theme
$my-theme-secondary: #69f0ae; // theme secondary color, change this value to customize theme
$my-theme: mdb-light-theme($my-theme-primary, $my-theme-secondary); // create the new theme using primary and secondary colors
// include theme styles
@include mdb-theme($my-theme);
Light theme
It's possible to create a light theme using mdb-light-theme
function. You just
need to define primary
and secondary
colors, all other parameters
will be adjusted automatically.
@import '~mdb-ui-kit/src/scss/mdb.pro.scss';
$my-theme-primary: #9c27b0; // theme primary color, change this value to customize theme
$my-theme-secondary: #69f0ae; // theme secondary color, change this value to customize theme
$my-light-theme: mdb-light-theme($my-theme-primary, $my-theme-secondary); // create the new light theme using primary and secondary colors
// include theme styles
@include mdb-theme($my-light-theme);
Dark theme
It's possible to create a dark theme using mdb-dark-theme
function. You just need
to define primary
and secondary
colors, all other parameters will be
adjusted automatically.
@import '~mdb-ui-kit/src/scss/mdb.pro.scss';
$my-theme-primary: #9c27b0; // theme primary color, change this value to customize theme
$my-theme-secondary: #69f0ae; // theme secondary color, change this value to customize theme
$my-dark-theme: mdb-dark-theme($my-theme-primary, $my-theme-secondary); // create the new dark theme using primary and secondary colors
// include theme styles
@include mdb-theme($my-dark-theme);
Ready-to-use dark skin
For your convenience, we added a ready-to-use dark skin to our UI KIT. Installation is very easy, because you just
need to replace the current mdb.min.css
stylesheet path with mdb.dark.min.css
. The files
are located in the css
folder.
<link rel="stylesheet" href="css/mdb.dark.min.css" />
Skin toggler
It's possible to create a skin toggler. Create a dark theme inside your main scss file, but this time wrap @include
rule with any custom class. Then add the button switch to toggle this class for the body element.
@import '~mdb-ui-kit/src/scss/mdb.pro.scss';
// DARK SKIN
$my-theme-primary: #1266f1;
$my-theme-secondary: #b23cfd;
$my-dark-theme: mdb-dark-theme($my-theme-primary, $my-theme-secondary);
.dark {
@include mdb-theme($my-dark-theme);
}
<button class="btn btn-primary" id="skinToggler">Toggle skin</button>
const skinToggler = document.getElementById('skinToggler');
const toggleSkin = () => {
document.body.classList.toggle('dark');
}
skinToggler.addEventListener('click', toggleSkin);
<link rel="stylesheet" href="css/mdb.min.css" />
and <link rel="stylesheet" href="css/mdb.dark.min.css" />
after clicking the toggle button.