Furnitor utilities

Custom Furnitor classes with a purpose to reduce the frequency of highly repetitive declarations.

Spacing

Assign responsive-friendly margin or padding values to an element or a subset of its sides with shorthand classes. Includes support for individual properties, all properties, and vertical and horizontal properties.

Spacing utilities that apply to all breakpoints, from xs to xl, have no breakpoint abbreviation in them. This is because those classes are applied from min-width: 0 and up, and thus are not bound by a media query. The remaining breakpoints, however, do include a breakpoint abbreviation.

The classes are named using the format {property}{sides}-{size} for xs and {property}{sides}-{breakpoint}-{size} for sm, md, lg, and xl.

Where property is one of:

  • m- for classes that set margin
  • p - for classes that set padding

Where sides is one of:

  • t - for classes that set margin-top or padding-top
  • b - for classes that set margin-bottom or padding-bottom
  • l - for classes that set margin-left or padding-left
  • r - for classes that set margin-right or padding-right
  • x - for classes that set both *-left and *-right
  • y - for classes that set both *-top and *-bottom
  • blank - for classes that set a margin or padding on all 4 sides of the element

Where size is one of:

  • 0 - for classes that eliminate the margin or padding by setting it to 0
  • 1 - (by default) for classes that set the margin or padding to $spacer * .3125
  • 2 - (by default) for classes that set the margin or padding to $spacer * .625
  • 3 - (by default) for classes that set the margin or padding to $spacer
  • 4 - (by default) for classes that set the margin or padding to $spacer * 1.25
  • 5 - (by default) for classes that set the margin or padding to $spacer * 1.5
  • 6 - (by default) for classes that set the margin or padding to $spacer * 1.875
  • 7 - (by default) for classes that set the margin or padding to $spacer * 2.5
  • 8 - (by default) for classes that set the margin or padding to $spacer * 3.125
  • 9 - (by default) for classes that set the margin or padding to $spacer * 3.75
  • 10 - (by default) for classes that set the margin or padding to $spacer * 4.375
  • 11 - (by default) for classes that set the margin or padding to $spacer * 5
  • 12 - (by default) for classes that set the margin or padding to $spacer * 5.625
  • 13 - (by default) for classes that set the margin or padding to $spacer * 6.25
  • 14 - (by default) for classes that set the margin or padding to $spacer * 6.875
  • 15 - (by default) for classes that set the margin or padding to $spacer * 7.5
  • 16 - (by default) for classes that set the margin or padding to $spacer * 9.375
  • 17 - (by default) for classes that set the margin or padding to $spacer * 10.625
  • auto - for classes that set the margin to auto

(You can add more sizes by adding entries to the $spacers Sass map variable via: _theme-variables.scss.)

Furnitor includes several offset classes, like:

<div class="ml-n2">.ml-n2</div>
<div class="ml-n3">.ml-n3</div>
<div class="mr-n2">.mr-n2</div>
<div class="mt-n1">.mt-n1</div>
<div class="mt-n5">.mt-n5</div>
<div class="mt-n6">.mt-n6</div>
<div class="mt-n9">.mt-n9</div>
<div class="mb-n9">.mb-n9</div>

Font sizes

Furnitor includes several responsive font size, like:

.fs-11

.fs-12

.fs-14

.fs-16

.fs-16

.fs-18

.fs-20

.fs-24

.fs-30

.fs-34

.fs-38

.fs-40

.fs-48

.fs-56

.fs-60

.fs-100

.fs-140

<p class="fs-11">.fs-11</p>
<p class="fs-12">.fs-12</p>
<p class="fs-14">.fs-14</p>
<p class="fs-15">.fs-16</p>
<p class="fs-16">.fs-16</p>
<p class="fs-18">.fs-18</p>
<p class="fs-20">.fs-20</p>
<p class="fs-24">.fs-24</p>
<p class="fs-30">.fs-30</p>
<p class="fs-34">.fs-34</p>
<p class="fs-38">.fs-38</p>
<p class="fs-40">.fs-40</p>
<p class="fs-48">.fs-48</p>
<p class="fs-56">.fs-56</p>
<p class="fs-60">.fs-60</p>
<p class="fs-100">.fs-100</p>
<p class="fs-140">.fs-140</p>

Line Height

.lh-12

.lh-13

.lh-15

.lh-16

.lh-175

.lh-1875

.lh-2

.lh-213

<p class="lh-12">.lh-12</p>
<p class="lh-13">.lh-13</p>
<p class="lh-15">.lh-15</p>
<p class="lh-16">.lh-16</p>
<p class="lh-175">.lh-175</p>
<p class="lh-1875">.lh-1875</p>
<p class="lh-2">.lh-2</p>
<p class="lh-213">.lh-213</p>

Opacity

.opacity-1

.opacity-2

.opacity-3

.opacity-4

.opacity-5

.opacity-6

.opacity-7

.opacity-8

.opacity-9

.opacity-10

<p class="opacity-1">.opacity-1</p>
<p class="opacity-2">.opacity-2</p>
<p class="opacity-3">.opacity-3</p>
<p class="opacity-4">.opacity-4</p>
<p class="opacity-5">.opacity-5</p>
<p class="opacity-6">.opacity-6</p>
<p class="opacity-7">.opacity-7</p>
<p class="opacity-8">.opacity-8</p>
<p class="opacity-9">.opacity-9</p>
<p class="opacity-10">.opacity-10</p>

Border

.border-2x

.border-3x

.border-4x

.border-5x

.border-6x

.border-6x .border-light-dark

.border-6x .border-hover-light-dark

.border-6x .border-white-darker

<p class="py-5 border-left border-2x pl-3">.border-2x</p>
<p class="py-5 border-left border-3x pl-3">.border-3x</p>
<p class="py-5 border-left border-4x pl-3">.border-4x</p>
<p class="py-5 border-left border-5x pl-3">.border-5x</p>
<p class="py-5 border-left border-6x pl-3">.border-6x</p>
<p class="py-5 border-left border-6x pl-3 border-light-dark">.border-6x .border-light-dark</p>
<p class="py-5 border-left border-6x pl-3 border-hover-light-dark">.border-6x .border-hover-light-dark</p>
<p class="py-5 border-left border-6x pl-3 border-white-darker">.border-6x .border-white-darker</p>

Text Color

.text-gray

.text-gray-01

.text-gray-02

.text-gray-03

.text-gray-04

<p class="text-gray">.text-gray</p>
<p class="text-gray-01">.text-gray-01</p>
<p class="text-gray-02">.text-gray-02</p>
<p class="text-gray-03">.text-gray-03</p>
<p class="text-gray-04">.text-gray-04</p>

Text Decoration

.text-decoration-underline

<p class="text-decoration-underline">.text-decoration-underline</p>

Background Color

.bg-color-1
.bg-color-5
.bg-color-3
.bg-color-3
.bg-color-4
<div class="bg-color-1 p-5 mb-3">.bg-color-1</div>
<div class="bg-color-5 p-5 mb-3">.bg-color-5</div>
<div class="bg-color-3 p-5 mb-3">.bg-color-3</div>
<div class="bg-color-3 p-5 mb-3">.bg-color-3</div>
<div class="bg-color-4 p-5 mb-3">.bg-color-4</div>

Display Grid

Grid with 3 columns, each column occupies 1 column and 1 row

.grid-item .gr-1 .gc-1
.grid-item .gr-1 .gc-1
.grid-item .gr-1 .gc-1

Grid with 2 columns, 1 column occupies 1 column and 1 row and rest occupies 1 column and 1 row

.grid-item .gr-1 .gc-2
.grid-item .gr-1 .gc-1

Grid with 2 columns, 1 column occupies 1 column and 2 row and rest occupies 1 column and 1 row

.grid-item .gr-2 .gc-1
.grid-item .gr-1 .gc-1
.grid-item .gr-1 .gc-1
<p>Grid with 3 columns, each column occupies 1 column and 1 row</p>
<div class="d-grid grid-gap g-3">
    <div class="grid-item bg-color-5 gr-1 gc-1 p-6">
        .grid-item .gr-1 .gc-1
    </div>
    <div class="grid-item bg-color-5 gr-1 gc-1 p-6">
        .grid-item .gr-1 .gc-1
    </div>
    <div class="grid-item bg-color-5 gr-1 gc-1 p-6">
        .grid-item .gr-1 .gc-1
    </div>
</div>
<p class="pt-6">Grid with 2 columns, 1 column occupies 1 column and 1 row and rest occupies 1 column and 1 row</p>
<div class="d-grid grid-gap g-3">
    <div class="grid-item bg-color-5 gr-1 gc-2 p-6">
        .grid-item .gr-1 .gc-2
    </div>
    <div class="grid-item bg-color-5 gr-1 gc-1 p-6">
        .grid-item .gr-1 .gc-1
    </div>
</div>
<p class="pt-6">Grid with 2 columns, 1 column occupies 1 column and 2 row and rest occupies 1 column and 1 row</p>
<div class="d-grid grid-gap g-3">
    <div class="grid-item bg-color-5 gr-2 gc-1 p-6">
        .grid-item .gr-2 .gc-1
    </div>
    <div class="grid-item bg-color-5 gr-1 gc-1 p-6">
        .grid-item .gr-1 .gc-1
    </div>
    <div class="grid-item bg-color-5 gr-1 gc-1 p-6">
        .grid-item .gr-1 .gc-1
    </div>
</div>

Width

.w-40px
.w-45px
.w-50px
.w-52px
.w-60px
.w-63px
.w-70px
.w-28px
.w-80px
.w-88px
.w-90px
.w-100px
.w-130
.w-124px
.mxw-84px
.w-215px
.mxw-370px
.mxw-435px
.mxw-495px
.mxw-630
.mxw-670
.mxw-814
.mxw-830
<div class="w-40px bg-color-5 mb-3 h-45px pl-1 fs-12">
    .w-40px
</div>
<div class="w-45px bg-color-5 mb-3 h-45px pl-1 fs-12">
    .w-45px
</div>
<div class="w-50px bg-color-5 mb-3 h-45px pl-1 fs-12">
    .w-50px
</div>
<div class="w-52px bg-color-5 mb-3 h-45px fs-12 pl-1">
    .w-52px
</div>
<div class="w-60px bg-color-5 mb-3 h-45px pl-1 fs-12">
    .w-60px
</div>
<div class="w-63px bg-color-5 mb-3 h-45px pl-1 fs-12">
    .w-63px
</div>
<div class="w-70px bg-color-5 mb-3 h-45px pl-1 fs-12">
    .w-70px
</div>
<div class="w-28px bg-color-5 mb-3 fs-11 pl-1">
    .w-28px
</div>
<div class="w-80px bg-color-5 mb-3 h-45px pl-1 fs-12">
    .w-80px
</div>
<div class="w-88px bg-color-5 mb-3 h-45px pl-1 fs-12">
    .w-88px
</div>
<div class="w-90px bg-color-5 mb-3 h-45px pl-1 fs-12">
    .w-90px
</div>
<div class="w-100px bg-color-5 mb-3 h-45px pl-1 fs-12">
    .w-100px
</div>
<div class="w-130 bg-color-5 mb-3 h-45px pl-1">
    .w-130
</div>
<div class="w-124px bg-color-5 mb-3 h-45px pl-1 fs-12">
    .w-124px
</div>
<div class="mxw-84px bg-color-5 mb-3 h-45px pl-1 fs-12">
    .mxw-84px
</div>
<div class="w-215px bg-color-5 mb-3 h-45px pl-1">
    .w-215px
</div>
<div class="mxw-370px bg-color-5 mb-3 h-45px pl-1">
    .mxw-370px
</div>
<div class="mxw-435px bg-color-5 mb-3 h-45px pl-1">
    .mxw-435px
</div>
<div class="mxw-495px bg-color-5 mb-3 h-45px pl-1">
    .mxw-495px
</div>
<div class="mxw-630 bg-color-5 mb-3 h-45px pl-1">
    .mxw-630
</div>
<div class="mxw-670 bg-color-5 mb-3 h-45px pl-1">
    .mxw-670
</div>
<div class="mxw-814 bg-color-5 mb-3 h-45px pl-1">
    .mxw-814
</div>
<div class="mxw-830 bg-color-5 mb-3 h-45px pl-1">
    .mxw-830
</div>

List Group No Border

  • An item
  • A second item
  • A third item
  • A fourth item
  • And a fifth one
<ul class="list-group list-group-no-border">
    <li class="list-group-item">An item</li>
    <li class="list-group-item">A second item</li>
    <li class="list-group-item">A third item</li>
    <li class="list-group-item">A fourth item</li>
    <li class="list-group-item">And a fifth one</li>
</ul>

Hover Image effect

Hover shine
Hover zoom in
Hover opacity
Hover flash
<div class="hover-shine mb-6 mxw-370px">
    <img src="../../images/b2.jpg" alt="Hover shine">
</div>
<div class="hover-zoom-in mb-6 mxw-370px">
    <img src="../../images/b2.jpg" alt="Hover zoom in">
</div>
<div class="hover-opacity mb-6 mxw-370px">
    <img src="../../images/b2.jpg" alt="Hover opacity">
</div>
<div class="hover-flash mb-6 mxw-370px">
    <img src="../../images/b2.jpg" alt="Hover flash">
</div>

Position

.pos-fixed-top-center

.pos-fixed-top-right

.pos-fixed-bottom

.pos-fixed-bottom-right

.pos-fixed-center

.pos-fixed-left-center

.pos-fixed-right-center

.pos-fix-top-left

<div class="position-relative p-10 bg-color-5 mb-6">
    <p class="position-absolute pos-fixed-top-center">.pos-fixed-top-center</p>
</div>
<div class="position-relative p-10 bg-color-5 mb-6">
    <p class="position-absolute pos-fixed-top-right">.pos-fixed-top-right</p>
</div>
<div class="position-relative p-10 bg-color-5 mb-6">
    <p class="position-absolute pos-fixed-bottom">.pos-fixed-bottom</p>
</div>
<div class="position-relative p-10 bg-color-5 mb-6">
    <p class="position-absolute pos-fixed-bottom-right">.pos-fixed-bottom-right</p>
</div>
<div class="position-relative p-10 bg-color-5 mb-6">
    <p class="position-absolute pos-fixed-center">.pos-fixed-center</p>
</div>
<div class="position-relative p-10 bg-color-5 mb-6">
    <p class="position-absolute pos-fixed-left-center">.pos-fixed-left-center</p>
</div>
<div class="position-relative p-10 bg-color-5 mb-6">
    <p class="position-absolute pos-fixed-right-center">.pos-fixed-right-center</p>
</div>
<div class="position-relative p-10 bg-color-5 mb-6">
    <p class="position-absolute pos-fix-top-left">.pos-fix-top-left</p>
</div>