base
Overview
Metronicfully utilizes the Bootstrap Utility API in src/sass/components/_utilities.scss
to generate additional utility classes to cover its own design system. The customized utility SASS variables are defined in src/sass/components/_variables.scss
and in src/sass/components/_variables.custom.scss
you can override any variable for your needs.
Theme Colors
Metronic extends Bootstrap Colors system with extra variants to cover its own design system build on top of the Boostrap Standards. The extended theme color SASS variables are defined in src/sass/components/_variables.scss
:
// Theme colors
$theme-colors: (
"white": $white, // custom color type
"primary": $primary,
"secondary": $secondary,
"success": $success,
"info": $info,
"warning": $warning,
"danger": $danger,
"light": $light,
"dark": $dark
) !default;
// Active and hover states colors
$theme-active-colors: (
"white": $white-active, // custom color type
"primary": $primary-active,
"secondary": $secondary-active,
"success": $success-active,
"info": $info-active,
"warning": $warning-active,
"danger": $danger-active,
"light": $light-active,
"dark": $dark-active
) !default; // Custom variable
// Inverse colors
$theme-inverse-colors: (
"white": $white-inverse,
"primary": $primary-inverse,
"secondary": $secondary-inverse,
"success": $success-inverse,
"info": $info-inverse,
"warning": $warning-inverse,
"danger": $danger-inverse,
"light": $light-inverse,
"dark": $dark-inverse
) !default; // Custom variable
// Light colors
$theme-light-colors: (
"white": $white-light,
"primary": $primary-light,
"secondary": $secondary-light,
"success": $success-light,
"info": $info-light,
"warning": $warning-light,
"danger": $danger-light,
"light": $light-light,
"dark": $dark-light
) !default; // Custom variable
// Text colors
$theme-text-colors: (
"white": $white,
"primary": $primary,
"secondary": $dark,
"success": $success,
"info": $info,
"warning": $warning,
"danger": $danger,
"light": $light,
"dark": $dark,
"muted": $text-muted,
"gray-100": $gray-100,
"gray-200": $gray-200,
"gray-300": $gray-300,
"gray-400": $gray-400,
"gray-500": $gray-500,
"gray-600": $gray-600,
"gray-700": $gray-700,
"gray-800": $gray-800,
"gray-900": $gray-900
) !default; // Custom variable
Custom variables that used to customize Bootstrap components are marked with Custom variable
comment in _variables.scss
file.
Spacing
Metronic extends Bootstrap Spacing Classes to provide additonal spacing options by overidding the default spacing SASS variable as shown below:
$spacers: (
0: 0,
1: ($spacer * .25),
2: ($spacer * .5),
3: ($spacer * .75),
4: ($spacer * 1),
5: ($spacer * 1.25),
6: ($spacer * 1.5),
7: ($spacer * 1.75),
8: ($spacer * 2),
9: ($spacer * 2.25),
10: ($spacer * 2.5),
11: ($spacer * 2.75),
12: ($spacer * 3),
13: ($spacer * 3.25),
14: ($spacer * 3.5),
15: ($spacer * 3.75),
16: ($spacer * 4),
17: ($spacer * 4.25),
18: ($spacer * 4.5),
19: ($spacer * 4.75),
20: ($spacer * 5)
);
Font Sizes
Metronic extends Bootstrap Font Size Classes to provide additonal sizing options by overidding the default font size SASS variable as shown below:
$font-sizes: (
1: $h1-font-size, // 22.75px
2: $h2-font-size, // 19.50px
3: $h3-font-size, // 17.55px
4: $h4-font-size, // 16.25px
5: $h5-font-size, // 14.95px
6: $h6-font-size, // 13.95px
7: $font-size-base * 0.95, // 12.35px
8: $font-size-base * 0.85, // 11.05px
9: $font-size-base * 0.75, // 9.75px
10: $font-size-base * 0.5, // 6.50px
base: $font-size-base, // 13px
fluid: 100%, // 100%
2x: $font-size-base * 2, // 26px
2qx: $font-size-base * 2.25, // 29.25px
2hx: $font-size-base * 2.5, // 32.5px
2tx: $font-size-base * 2.75, // 35.75px
3x: $font-size-base * 3, // 39px
3qx: $font-size-base * 3.25, // 42.25px
3hx: $font-size-base * 3.5, // 45.5px
3tx: $font-size-base * 3.75, // 48.75px
4x: $font-size-base * 4, // 52px
4qx: $font-size-base * 4.25, // 55.25px
4hx: $font-size-base * 4.5, // 58.5px
4tx: $font-size-base * 4.75, // 61.75px
5x: $font-size-base * 5, // 65px
5qx: $font-size-base * 5.25, // 68.25px
5hx: $font-size-base * 5.5, // 71.5px
5tx: $font-size-base * 5.75 // 74.75px
) !default;
Line Height
Metronic extends Bootstrap Line Height Classes to provide additonal line height options by overidding the line height SASS variable.
Use .lh-{value}
class to set an element's line height where value
is one of:
1
- for classes that set line height to1
sm
- for classes that set line height to1.25
base
- for classes that set line height to1.5
lg
- for classes that set line height to1.75
xl
- for classes that set line height to2
xxl
- for classes that set line height to2.25
Example text
for .lh-1
Example text
for .lh-sm
Example text
for .lh-base
Example text
for .lh-lg
Example text
for .lh-xl
Example text
for .lh-xxl
<div class="lh-1">Example text for .lh-1</div>
<div class="lh-sm">Example text for .lh-sm</div>
<div class="lh-base">Example text for .lh-base</div>
<div class="lh-lg">Example text for .lh-lg</div>
<div class="lh-xl">Example text for .lh-xl</div>
<div class="lh-xxl">Example text for .lh-xxl</div>
Letter Spacing
Use .ls-{value}
class to set an element's letter spacing where value
is one of:
1
- for classes that set letter spacing to0.1rem
2
- for classes that set letter spacing to0.115rem
3
- for classes that set letter spacing to0.125rem
4
- for classes that set letter spacing to0.25rem
5
- for classes that set letter spacing to0.5rem
n1
- for classes that set letter spacing to-0.1rem
n2
- for classes that set letter spacing to-0.115rem
n3
- for classes that set letter spacing to-0.125rem
n4
- for classes that set letter spacing to-0.25rem
n5
- for classes that set letter spacing to-0.5rem
Example text for .ls-1
Example text for .ls-2
Example text for .ls-3
Example text for .ls-4
Example text for .ls-5
Example text for .ls-n1
Example text for .ls-n2
Example text for .ls-n3
Example text for .ls-n4
Example text for .ls-n5
<div class="ls-1">Example text for .ls-1</div>
<div class="ls-2">Example text for .ls-2</div>
<div class="ls-3">Example text for .ls-3</div>
<div class="ls-4">Example text for .ls-4</div>
<div class="ls-5">Example text for .ls-5</div>
<div class="ls-n1">Example text for .ls-n1</div>
<div class="ls-n2">Example text for .ls-n2</div>
<div class="ls-n3">Example text for .ls-n3</div>
<div class="ls-n4">Example text for .ls-n4</div>
<div class="ls-n5">Example text for .ls-n5</div>
Width & Height
Assign responsive-friendly height
, min-height
, max-height
, width
, min-with
and max-width
values to an element with shorthand classes. The classes are named using the format {property}-{size}
for xs
and {property}-{breakpoint}-{size}
for sm
, md
, lg
, xl
, and xxl
.
Where property
is one of:
h
- for classes that set heightmh
- for classes that set max heightmin-h
- for classes that set min heightw
- for classes that set widthmw
- for classes that set max widthmin-w
- for classes that set min width
Where size
defined with $custom-sizes
variable in sass/_variables.scss
is one of-
25
- for 25%50
- for 50%75
- for 75%100
- for 100%auto
- for auto1px
2px
3px
4px
5px
6px
7px
8px
9px
10px
15px
20px
25px
30px
35px
40px
45px
50px
55px
60px
65px
70px
75px
80px
85px
90px
95px
100px
125px
150px
175px
200px
225px
250px
275px
300px
325px
350px
375px
400px
425px
450px
475px
500px
550px
600px
650px
700px
750px
800px
850px
900px
950px
1000px
w-100px
h-100px
w-150px
h-150px
w-200px
h-200px
w-250px
h-250px
min-w-100px
min-h-100px
mw-100px
mh-100px
min-w-150px
min-h-150px
mw-150px
mh-150px
min-w-200px
min-h-200px
mw-200px
mh-200px
min-w-250px
min-h-250px
mw-250px
mh-250px
<div class="w-100px h-100px"></div>
<div class="w-150px h-150px"></div>
<div class="w-200px h-200px"></div>
<div class="w-250px h-250px"></div>
<div class="min-w-100px min-h-100px mw-100px mh-100px"></div>
<div class="min-w-150px min-h-150px mw-150px mh-150px"></div>
<div class="min-w-200px min-h-200px mw-200px mh-200px"></div>
<div class="min-w-250px min-h-250px mw-250px mh-250px"></div>
Z-Index
Use .z-index-{value}
class to set an element's z-index:
Where value
is one of:
n1
- for classes that set z-indexn1
n2
- for classes that set z-indexn2
0
- for classes that set z-index0
1
- for classes that set z-index1
2
- for classes that set z-index2
3
- for classes that set z-index3
<div class="z-index-n1"></div>
<div class="z-index-n2"></div>
<div class="z-index-0"></div>
<div class="z-index-1"></div>
<div class="z-index-2"></div>
<div class="z-index-3"></div>
CSS Variables
There are a variety custom CSS variables available. To access these variables in Javascript(Charts, etc), we have provided a simple Javascript function to grab it through CSS variables easily and quickly. Here's the list of CSS variables available for you:
--kt-primary
- Primary color hex value.--kt-success
- Success color hex value.--kt-info
- Info color hex value.--kt-danger
- Danger color hex value.--kt-warning
- Warning color hex value.--kt-dark
- Dark color hex value.--kt-light
- Light color hex value.--kt-gray-100
- Gray 100 color hex value.--kt-gray-200
- Gray 200 color hex value.--kt-gray-300
- Gray 300 color hex value.--kt-gray-500
- Gray 400 color hex value.--kt-gray-500
- Gray 500 color hex value.--kt-gray-600
- Gray 600 color hex value.--kt-gray-700
- Gray 700 color hex value.--kt-gray-800
- Gray 800 color hex value.--kt-gray-900
- Gray 900 color hex value.--kt-xs
- Extra small breakpoint width value - 0.--kt-sm
- Extra small breakpoint width value - 576px.--kt-md
- Medium small breakpoint width value - 768px.--kt-lg
- Large small breakpoint width value - 992px.--kt-xl
- Extra large small breakpoint width value - 1200px.--kt-xxl
- Double extra large breakpoint width value - 1400px.--kt-font-sans-serif
- Main font family. E.g:"Roboto", sans-serif
.
To access these variables, simply call it with this function KTUtil.getCssVariableValue('css variable name')
.
For example to access the primary color, CSS responsive breakpoint value or the theme font family you can use the below code:
var primaryColor = KTUtil.getCssVariableValue("--kt-primary");
var breakpointLg = KTUtil.getCssVariableValue("--kt-lg");
var fontFamily = KTUtil.getCssVariableValue("--kt-font-sans-serif");