Helper Classes

Borders

Use border utilities to quickly style the border and border-radius of an element. Great for images, buttons, or any other element.

Add border

Add one of these to class to add border on the required side.

Classes Description
.border Add solid border of 1px on each side.
.border-top Add solid border top of 1px.
.border-bottom Add solid border bottom of 1px.
.border-left Add solid border left of 1px.
.border-right Add solid border right of 1px.
Remove border

Add one of these to class to remove border on the required side.

Classes Description
.no-border Remove border from all side.
.border-top-0 Remove border from the top side.
.border-bottom-0 Remove border from the bottom side.
.border-left-0 Remove border from the left side.
.border-right-0 Remove border from the right side.
Border widths

Add one of these to class to change border width on the required side.

Classes Description
.border-2 Chande border width to 2px on each side.
.border-top-2 Chande border width to 2px on top side.
.border-bottom-2 Chande border width to 2px on bottom side.
.border-left-2 Chande border width to 2px on left side.
.border-right-2 Chande border width to 2px on right side.
.border-3 Chande border width to 3px on each side.
.border-top-3 Chande border width to 3px on top side.
.border-bottom-3 Chande border width to 3px on bottom side.
.border-left-3 Chande border width to 3px on left side.
.border-right-3 Chande border width to 3px on right side.
Border color

Change the border color using utilities built on our theme colors. For more border color related options please check color palette pages.

Classes Description
.border border-primary Add primary color border to all side.
.border border-secondary Add secondary color border to all side.
.border border-success Add success color border to all side.
.border border-danger Add danger color border to all side.
.border border-warning Add warning color border to all side.
.border border-info Add info color border to all side.
.border border-light Add light color border to all side.
.border border-dark Add dark color border to all side.
.border border-white Add white color border to all side.
Border-radius

Add classes to an element to easily round its corners.

Classes Description
.rounded Add round corners border to all side.
.rounded-top Add round corners border to top side only.
.rounded-bottom Add round corners border to bottom side only.
.rounded-left Add round corners border to left side only.
.rounded-right Add round corners border to right side only.
.rounded-circle Create round circle border.
.rounded-0 Remove border corder from the all side.
Remove border radius

Add one of these to class to remove border radius on the required side.

Classes Description
.no-border-top-radius Remove border radius from top side.
.no-border-bottom-radius Remove border radius from bottom side.
.no-border-top-left-radius Remove border radius from top left side.
.no-border-top-right-radius Remove border radius from top right side.
.no-border-bottom-left-radius Remove border radius from bottom left side.
.no-border-bottom-right-radius Remove border radius from bottom right side.

Clearfix

Quickly and easily clear floated content within a container by adding a clearfix utility.

Easily clear floats by adding .clearfix to the parent element. Can also be used as a mixin.

                                
                                    <div class="clearfix">...</div>
                                
                        
                                
                                    // Mixin itself
                    @mixin clearfix() {
                      &::after {
                        display: block;
                        content: "";
                        clear: both;
                      }
                    }
                    
                    // Usage as a mixin
                    .element {
                      @include clearfix;
                    };
                                
                        

The following example shows how the clearfix can be used. Without the clearfix the wrapping div would not span around the buttons which would cause a broken layout.


            <div class="bg-info clearfix">
              <button type="button" class="btn btn-secondary float-left">Example Button floated left</button>
              <button type="button" class="btn btn-secondary float-right">Example Button floated right</button>
            </div>
            

Close icon

Use a generic close icon for dismissing content like modals and alerts.

Be sure to include text for screen readers, as we’ve done with aria-label.

                                
                                    <button type="button" class="close" aria-label="Close">
                      <span aria-hidden="true">×</span>
                    </button>
                                
                        

Display property

Quickly and responsively toggle the display value of components and more with our display utilities. Includes support for some of the more common values, as well as some extras for controlling display when printing.

Common display values

The display property accepts a handful of values and we support many of them with utility classes. We purposefully don’t provide every value as a utility, so here’s what we support:

Classes Description
.d-none Forces the element to hide on all viewports.
.d-inline Forces the element to behave like an inline element.
.d-inline-block Forces the element to behave like an inline-block element.
.d-block Forces the element to behave like an block element.
.d-table Forces the element to behave like <table> element.
.d-table-cell Forces the element to behave like <td> element.
.d-flex Forces the element as a block-level flex container.
.d-inline-flex Forces the element as an inline-level flex container.

Put them to use by applying any of the classes to an element of your choice. For example, here’s how you could use the inline, block, or inline-block utilities (the same applies to the other classes).

d-inline
d-inline

                <div class="d-inline bg-success">d-inline</div>
                <div class="d-inline bg-success">d-inline</div>
                
d-block

                <span class="d-block bg-primary">d-block</span>
                
d-inline-block
d-inline-block

                <div class="d-inline-block bg-warning">d-inline-block</div>
                <div class="d-inline-block bg-warning">d-inline-block</div>
                

Responsive variations also exist for every single utility mentioned above.

  • .d-none
  • .d-inline
  • .d-inline-block
  • .d-block
  • .d-table
  • .d-table-cell
  • .d-flex
  • .d-inline-flex
  • .d-sm-none
  • .d-sm-inline
  • .d-sm-inline-block
  • .d-sm-block
  • .d-sm-table
  • .d-sm-table-cell
  • .d-sm-flex
  • .d-sm-inline-flex
  • .d-md-none
  • .d-md-inline
  • .d-md-inline-block
  • .d-md-block
  • .d-md-table
  • .d-md-table-cell
  • .d-md-flex
  • .d-md-inline-flex
  • .d-lg-none
  • .d-lg-inline
  • .d-lg-inline-block
  • .d-lg-block
  • .d-lg-table
  • .d-lg-table-cell
  • .d-lg-flex
  • .d-lg-inline-flex
  • .d-xl-none
  • .d-xl-inline
  • .d-xl-inline-block
  • .d-xl-block
  • .d-xl-table
  • .d-xl-table-cell
  • .d-xl-flex
  • .d-xl-inline-flex
Hiding Elements

For faster mobile-friendly development, use responsive display classes for showing and hiding elements by device. Avoid creating entirely different versions of the same site, instead hide element responsively for each screen size.

To hide elements simply use the .d-none class or one of the .d-{sm,md,lg,xl}-none classes for any responsive screen variation.

To show an element only on a given interval of screen sizes you can combine one .d-*-none class with a .d-*-* class, for example .d-none.d-md-block.d-xl-none will hide the element for all screen sizes except on medium and large devices.

Screen Size Class
Hidden on all d-none
Hidden only on xs d-none d-sm-block
Hidden only on sm d-sm-none d-md-block
Hidden only on md d-md-none d-lg-block
Hidden only on lg d-lg-none d-xl-block
Hidden only on xl d-xl-none
Visible on all d-block
Visible only on xs d-block d-sm-none
Visible only on sm d-none d-sm-block d-md-none
Visible only on md d-none d-md-block d-lg-none
Visible only on lg d-none d-lg-block d-xl-none
Visible only on xl d-none d-xl-block
Display in print

Change the display value of elements when printing with our print display utilities.

Class Print style
.d-print-block Applies display: block to the element when printing
.d-print-inline Applies display: inline to the element when printing
.d-print-inline-block Applies display: inline-block to the element when printing
.d-print-none Applies display: none to the element when printing

Embeds

Create responsive video or slideshow embeds based on the width of the parent by creating an intrinsic ratio that scales on any device.

Rules are directly applied to <iframe>, <embed>, <video>, and <object> elements; optionally use an explicit descendant class .embed-responsive-item when you want to match the styling for other attributes.

Pro-Tip! You don’t need to include frameborder="0" in your <iframe>s as we override that for you.

Example

Wrap any embed like an <iframe> in a parent element with .embed-responsive and an aspect ratio. The .embed-responsive-item isn’t strictly required, but we encourage it.


                <div class="embed-responsive embed-responsive-16by9">
                  <iframe class="embed-responsive-item" src="https://www.youtube.com/embed/zpOULjyy-n8?rel=0" allowfullscreen></iframe>
                </div>
                
Aspect ratios

Aspect ratios can be customized with modifier classes.


                <!-- 21:9 aspect ratio -->
                <div class="embed-responsive embed-responsive-21by9">
                  <iframe class="embed-responsive-item" src="..."></iframe>
                </div>
                
                <!-- 16:9 aspect ratio -->
                <div class="embed-responsive embed-responsive-16by9">
                  <iframe class="embed-responsive-item" src="..."></iframe>
                </div>
                
                <!-- 4:3 aspect ratio -->
                <div class="embed-responsive embed-responsive-4by3">
                  <iframe class="embed-responsive-item" src="..."></iframe>
                </div>
                
                <!-- 1:1 aspect ratio -->
                <div class="embed-responsive embed-responsive-1by1">
                  <iframe class="embed-responsive-item" src="..."></iframe>
                </div>
                

Flex

Quickly manage the layout, alignment, and sizing of grid columns, navigation, components, and more with a full suite of responsive flexbox utilities. For more complex implementations, custom CSS may be necessary.

Enable flex behaviors

Apply display utilities to create a flexbox container and transform direct children elements into flex items. Flex containers and items are able to be modified further with additional flex properties.

I'm a flexbox container!

                <div class="d-flex p-2">I'm a flexbox container!</div>
                
I'm an inline flexbox container!

                <div class="d-inline-flex p-2">I'm an inline flexbox container!</div>
                

Responsive variations also exist for .d-flex and .d-inline-flex.

  • .d-flex
  • .d-inline-flex
  • .d-sm-flex
  • .d-sm-inline-flex
  • .d-md-flex
  • .d-md-inline-flex
  • .d-lg-flex
  • .d-lg-inline-flex
  • .d-xl-flex
  • .d-xl-inline-flex
Direction

Set the direction of flex items in a flex container with direction utilities. In most cases you can omit the horizontal class here as the browser default is row. However, you may encounter situations where you needed to explicitly set this value (like responsive layouts).

Use .flex-row to set a horizontal direction (the browser default), or .flex-row-reverse to start the horizontal direction from the opposite side.

Flex item 1
Flex item 2
Flex item 3
Flex item 1
Flex item 2
Flex item 3

                <div class="d-flex flex-row">
                  <div class="p-2">Flex item 1</div>
                  <div class="p-2">Flex item 2</div>
                  <div class="p-2">Flex item 3</div>
                </div>
                <div class="d-flex flex-row-reverse">
                  <div class="p-2">Flex item 1</div>
                  <div class="p-2">Flex item 2</div>
                  <div class="p-2">Flex item 3</div>
                </div>
                

Use .flex-column to set a vertical direction, or .flex-column-reverse to start the vertical direction from the opposite side.

Flex item 1
Flex item 2
Flex item 3
Flex item 1
Flex item 2
Flex item 3

                <div class="d-flex flex-column">
                  <div class="p-2">Flex item 1</div>
                  <div class="p-2">Flex item 2</div>
                  <div class="p-2">Flex item 3</div>
                </div>
                <div class="d-flex flex-column-reverse">
                  <div class="p-2">Flex item 1</div>
                  <div class="p-2">Flex item 2</div>
                  <div class="p-2">Flex item 3</div>
                </div>
                

Responsive variations also exist for flex-direction.

  • .flex-row
  • .flex-row-reverse
  • .flex-column
  • .flex-column-reverse
  • .flex-sm-row
  • .flex-sm-row-reverse
  • .flex-sm-column
  • .flex-sm-column-reverse
  • .flex-md-row
  • .flex-md-row-reverse
  • .flex-md-column
  • .flex-md-column-reverse
  • .flex-lg-row
  • .flex-lg-row-reverse
  • .flex-lg-column
  • .flex-lg-column-reverse
  • .flex-xl-row
  • .flex-xl-row-reverse
  • .flex-xl-column
  • .flex-xl-column-reverse
Justify content

Use justify-content utilities on flexbox containers to change the alignment of flex items on the main axis (the x-axis to start, y-axis if flex-direction: column). Choose from start (browser default), end, center, between, or around.

Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item

                <div class="d-flex justify-content-start">...</div>
                <div class="d-flex justify-content-end">...</div>
                <div class="d-flex justify-content-center">...</div>
                <div class="d-flex justify-content-between">...</div>
                <div class="d-flex justify-content-around">...</div>
                

Responsive variations also exist for justify-content.

  • .justify-content-start
  • .justify-content-end
  • .justify-content-center
  • .justify-content-between
  • .justify-content-around
  • .justify-content-sm-start
  • .justify-content-sm-end
  • .justify-content-sm-center
  • .justify-content-sm-between
  • .justify-content-sm-around
  • .justify-content-md-start
  • .justify-content-md-end
  • .justify-content-md-center
  • .justify-content-md-between
  • .justify-content-md-around
  • .justify-content-lg-start
  • .justify-content-lg-end
  • .justify-content-lg-center
  • .justify-content-lg-between
  • .justify-content-lg-around
  • .justify-content-xl-start
  • .justify-content-xl-end
  • .justify-content-xl-center
  • .justify-content-xl-between
  • .justify-content-xl-around
Align items

Use align-items utilities on flexbox containers to change the alignment of flex items on the cross axis (the y-axis to start, x-axis if flex-direction: column). Choose from start, end, center, baseline, or stretch (browser default).

Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item

                <div class="d-flex align-items-start">...</div>
                <div class="d-flex align-items-end">...</div>
                <div class="d-flex align-items-center">...</div>
                <div class="d-flex align-items-baseline">...</div>
                <div class="d-flex align-items-stretch">...</div>
                

Responsive variations also exist for align-items.

  • .align-items-start
  • .align-items-end
  • .align-items-center
  • .align-items-baseline
  • .align-items-stretch
  • .align-items-sm-start
  • .align-items-sm-end
  • .align-items-sm-center
  • .align-items-sm-baseline
  • .align-items-sm-stretch
  • .align-items-md-start
  • .align-items-md-end
  • .align-items-md-center
  • .align-items-md-baseline
  • .align-items-md-stretch
  • .align-items-lg-start
  • .align-items-lg-end
  • .align-items-lg-center
  • .align-items-lg-baseline
  • .align-items-lg-stretch
  • .align-items-xl-start
  • .align-items-xl-end
  • .align-items-xl-center
  • .align-items-xl-baseline
  • .align-items-xl-stretch
Align self

Use align-self utilities on flexbox items to individually change their alignment on the cross axis (the y-axis to start, x-axis if flex-direction: column). Choose from the same options as align-items: start, end, center, baseline, or stretch (browser default).

Flex item
Aligned flex item
Flex item
Flex item
Aligned flex item
Flex item
Flex item
Aligned flex item
Flex item
Flex item
Aligned flex item
Flex item
Flex item
Aligned flex item
Flex item

                <div class="align-self-start">Aligned flex item</div>
                <div class="align-self-end">Aligned flex item</div>
                <div class="align-self-center">Aligned flex item</div>
                <div class="align-self-baseline">Aligned flex item</div>
                <div class="align-self-stretch">Aligned flex item</div>
                

Responsive variations also exist for align-self.

  • .align-self-start
  • .align-self-end
  • .align-self-center
  • .align-self-baseline
  • .align-self-stretch
  • .align-self-sm-start
  • .align-self-sm-end
  • .align-self-sm-center
  • .align-self-sm-baseline
  • .align-self-sm-stretch
  • .align-self-md-start
  • .align-self-md-end
  • .align-self-md-center
  • .align-self-md-baseline
  • .align-self-md-stretch
  • .align-self-lg-start
  • .align-self-lg-end
  • .align-self-lg-center
  • .align-self-lg-baseline
  • .align-self-lg-stretch
  • .align-self-xl-start
  • .align-self-xl-end
  • .align-self-xl-center
  • .align-self-xl-baseline
  • .align-self-xl-stretch
Auto margins

Flexbox can do some pretty awesome things when you mix flex alignments with auto margins. Shown below are three examples of controlling flex items via auto margins: default (no auto margin), pushing two items to the right (.mr-auto), and pushing two items to the left (.ml-auto).

Unfortunately, IE10 and IE11 do not properly support auto margins on flex items whose parent has a non-default justify-content value. See this StackOverflow answer for more details.

Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item

                <div class="d-flex">
                  <div class="p-2">Flex item</div>
                  <div class="p-2">Flex item</div>
                  <div class="p-2">Flex item</div>
                </div>
                
                <div class="d-flex">
                  <div class="mr-auto p-2">Flex item</div>
                  <div class="p-2">Flex item</div>
                  <div class="p-2">Flex item</div>
                </div>
                
                <div class="d-flex">
                  <div class="p-2">Flex item</div>
                  <div class="p-2">Flex item</div>
                  <div class="ml-auto p-2">Flex item</div>
                </div>
                
With align-items

Vertically move one flex item to the top or bottom of a container by mixing align-items, flex-direction: column, and margin-top: auto or margin-bottom: auto.

Flex item
Flex item
Flex item
Flex item
Flex item
Flex item

                <div class="d-flex align-items-start flex-column" style="height: 200px;">
                  <div class="mb-auto p-2">Flex item</div>
                  <div class="p-2">Flex item</div>
                  <div class="p-2">Flex item</div>
                </div>
                
                <div class="d-flex align-items-end flex-column" style="height: 200px;">
                  <div class="p-2">Flex item</div>
                  <div class="p-2">Flex item</div>
                  <div class="mt-auto p-2">Flex item</div>
                </div>
                
Wrap

Change how flex items wrap in a flex container. Choose from no wrapping at all (the browser default) with .flex-nowrap, wrapping with .flex-wrap, or reverse wrapping with .flex-wrap-reverse.

Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item

                <div class="d-flex flex-nowrap">
                  ...
                </div>
                
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item

                <div class="d-flex flex-wrap">
                  ...
                </div>
                
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item

                <div class="d-flex flex-wrap-reverse">
                  ...
                </div>
                

Responsive variations also exist for flex-wrap.

  • .flex-nowrap
  • .flex-wrap
  • .flex-wrap-reverse
  • .flex-sm-nowrap
  • .flex-sm-wrap
  • .flex-sm-wrap-reverse
  • .flex-md-nowrap
  • .flex-md-wrap
  • .flex-md-wrap-reverse
  • .flex-lg-nowrap
  • .flex-lg-wrap
  • .flex-lg-wrap-reverse
  • .flex-xl-nowrap
  • .flex-xl-wrap
  • .flex-xl-wrap-reverse
Order

Change the visual order of specific flex items with a handful of order utilities. We only provide options for making an item first or last, as well as a reset to use the DOM order. As order takes any integer value (e.g., 5), add custom CSS for any additional values needed.

First flex item
Second flex item
Third flex item

                <div class="d-flex flex-nowrap">
                  <div class="order-3 p-2">First flex item</div>
                  <div class="order-2 p-2">Second flex item</div>
                  <div class="order-1 p-2">Third flex item</div>
                </div>
                

Responsive variations also exist for order.

  • .order-1
  • .order-2
  • .order-3
  • .order-4
  • .order-5
  • .order-6
  • .order-7
  • .order-8
  • .order-9
  • .order-10
  • .order-11
  • .order-12
  • .order-sm-1
  • .order-sm-2
  • .order-sm-3
  • .order-sm-4
  • .order-sm-5
  • .order-sm-6
  • .order-sm-7
  • .order-sm-8
  • .order-sm-9
  • .order-sm-10
  • .order-sm-11
  • .order-sm-12
  • .order-md-1
  • .order-md-2
  • .order-md-3
  • .order-md-4
  • .order-md-5
  • .order-md-6
  • .order-md-7
  • .order-md-8
  • .order-md-9
  • .order-md-10
  • .order-md-11
  • .order-md-12
  • .order-lg-1
  • .order-lg-2
  • .order-lg-3
  • .order-lg-4
  • .order-lg-5
  • .order-lg-6
  • .order-lg-7
  • .order-lg-8
  • .order-lg-9
  • .order-lg-10
  • .order-lg-11
  • .order-lg-12
  • .order-xl-1
  • .order-xl-2
  • .order-xl-3
  • .order-xl-4
  • .order-xl-5
  • .order-xl-6
  • .order-xl-7
  • .order-xl-8
  • .order-xl-9
  • .order-xl-10
  • .order-xl-11
  • .order-xl-12
Align content

Use align-content utilities on flexbox containers to align flex items together on the cross axis. Choose from start (browser default), end, center, between, around, or stretch. To demonstrate these utilities, we’ve enforced flex-wrap: wrap and increased the number of flex items.

Heads up! This property has no effect on single rows of flex items.

Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item

                <div class="d-flex align-content-start flex-wrap">
                  ...
                </div>
                
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item

                <div class="d-flex align-content-end flex-wrap">
                  ...
                </div>
                
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item

                <div class="d-flex align-content-center flex-wrap">
                  ...
                </div>
                
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item

                <div class="d-flex align-content-between flex-wrap">
                  ...
                </div>
                
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item

                <div class="d-flex align-content-around flex-wrap">
                  ...
                </div>
                
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item
Flex item

                <div class="d-flex align-content-stretch flex-wrap">
                  ...
                </div>
                

Responsive variations also exist for align-content.

  • .align-content-start
  • .align-content-end
  • .align-content-center
  • .align-content-around
  • .align-content-stretch
  • .align-content-sm-start
  • .align-content-sm-end
  • .align-content-sm-center
  • .align-content-sm-around
  • .align-content-sm-stretch
  • .align-content-md-start
  • .align-content-md-end
  • .align-content-md-center
  • .align-content-md-around
  • .align-content-md-stretch
  • .align-content-lg-start
  • .align-content-lg-end
  • .align-content-lg-center
  • .align-content-lg-around
  • .align-content-lg-stretch
  • .align-content-xl-start
  • .align-content-xl-end
  • .align-content-xl-center
  • .align-content-xl-around
  • .align-content-xl-stretch

Float

Toggle floats on any element, across any breakpoint, using our responsive float utilities.

These utility classes float an element to the left or right, or disable floating, based on the current viewport size using the CSS float property. !important is included to avoid specificity issues. These use the same viewport breakpoints as our grid system.

Toggle a float with a class:

Float left on all viewport sizes

Float right on all viewport sizes

Don't float on all viewport sizes

                <div class="float-left">Float left on all viewport sizes</div><br>
                <div class="float-right">Float right on all viewport sizes</div><br>
                <div class="float-none">Don't float on all viewport sizes</div>
                
Responsive

Responsive variations also exist for each float value.

Float left on viewports sized SM (small) or wider

Float left on viewports sized MD (medium) or wider

Float left on viewports sized LG (large) or wider

Float left on viewports sized XL (extra-large) or wider


                <div class="float-sm-left">Float left on viewports sized SM (small) or wider</div><br>
                <div class="float-md-left">Float left on viewports sized MD (medium) or wider</div><br>
                <div class="float-lg-left">Float left on viewports sized LG (large) or wider</div><br>
                <div class="float-xl-left">Float left on viewports sized XL (extra-large) or wider</div><br>
                

Here are all the support classes;

  • .float-left
  • .float-right
  • .float-none
  • .float-sm-left
  • .float-sm-right
  • .float-sm-none
  • .float-md-left
  • .float-md-right
  • .float-md-none
  • .float-lg-left
  • .float-lg-right
  • .float-lg-none
  • .float-xl-left
  • .float-xl-right
  • .float-xl-none

Image replacement

Swap text for background images with the image replacement class.

Utilize the .text-hide class or mixin to help replace an element’s text content with a background image.


                <h1 class="text-hide">Custom heading</h1>
                

Use the .text-hide class to maintain the accessibility and SEO benefits of heading tags, but want to utilize a background-image instead of text.

Bootstrap


                <h1 class="text-hide my-2" style="background-image: url('../../../app-assets/images/logo/stack-logo.png'); width: 30px; height: 26px;">Bootstrap</h1>
                

Position

Use these shorthand utilities for quickly configuring the position of an element.

Classes Description
.position-fixed Changes element's position to fixed.
.position-relative Changes element's position to relative.
.position-absolute Changes element's position to absolute.
.position-static Changes element's position to static.
.position-sticky Changes element's position to static.
Fixed top

Position an element at the top of the viewport, from edge to edge. Be sure you understand the ramifications of fixed position in your project; you may need to add aditional CSS.


                <div class="fixed-top">...</div>
                
Fixed bottom

Position an element at the bottom of the viewport, from edge to edge. Be sure you understand the ramifications of fixed position in your project; you may need to add aditional CSS.


                <div class="fixed-bottom">...</div>
                
Sticky top

Position an element at the top of the viewport, from edge to edge, but only after you scroll past it. The .sticky-top utility uses CSS’s position: sticky, which isn’t fully supported in all browsers.

Microsoft Edge and IE11 will render position: sticky as position: relative. As such, we wrap the styles in a @supports query, limiting the stickiness to only browsers that properly can render it.


                <div class="sticky-top">...</div>
                

Screenreaders

Use screenreader utilities to hide elements on all devices except screen readers.

Hide an element to all devices except screen readers with .sr-only. Combine .sr-only with .sr-only-focusable to show the element again when it’s focused (e.g. by a keyboard-only user). Can also be used as mixins.


                <a class="sr-only sr-only-focusable" href="#content">Skip to main content</a>
                

Sizing

Easily make an element as wide or as tall (relative to its parent) with our width and height utilities.

Width and height utilities are generated from the $sizes Sass map in _variables.scss. Includes support for 25%, 50%, 75%, and 100% by default. Modify those values as you need to generate different utilities here.

Width 25%
Width 50%
Width 75%
Width 100%

                <div class="w-25 p-3" style="background-color: #eee;">Width 25%</div>
                <div class="w-50 p-3" style="background-color: #eee;">Width 50%</div>
                <div class="w-75 p-3" style="background-color: #eee;">Width 75%</div>
                <div class="w-100 p-3" style="background-color: #eee;">Width 100%</div>
                
Height 25%
Height 50%
Height 75%
Height 100%

                <div style="height: 100px; background-color: rgba(255,0,0,0.1);">
                  <div class="h-25 d-inline-block" style="width: 120px; background-color: rgba(0,0,255,.1)">Height 25%</div>
                  <div class="h-50 d-inline-block" style="width: 120px; background-color: rgba(0,0,255,.1)">Height 50%</div>
                  <div class="h-75 d-inline-block" style="width: 120px; background-color: rgba(0,0,255,.1)">Height 75%</div>
                  <div class="h-100 d-inline-block" style="width: 120px; background-color: rgba(0,0,255,.1)">Height 100%</div>
                </div>
                

You can also use max-width: 100%; and max-height: 100%; utilities as needed.

Max-width = 100% [1000%x100]

                    <img class="mw-100" src="..." alt="Max-width 100%">
                
Max-height 100%

                <div style="height: 100px; background-color: rgba(255,0,0,0.1);">
                  <div class="mh-100" style="width: 100px; height: 200px; background-color: rgba(0,0,255,0.1);">Max-height 100%</div>
                </div>
                
Width && Height

Add one of these to class to set width of the content.

Classes Description
.fit Set content maximum width 100%.
.half-width Set content width 50%.
.full-width Set content width 100%.
.full-height Set content height 100%.
Fixed Width

Add one of these to class to set fixed width of the content.

Classes Description
.width-{size} Set content fixed width in pixel of selected size where size can be 50, 100, 150, 200, 250, 300, 350, 400, 450, 500, 550, 600, 650, 700, 750 and 800. i.e .width-50
.width-{size}-per Set content fixed width in percentage of selected size where size can be 5%, 10%, 15%, 20%, 25%, 30%, 35%, 40%, 45%, 50%, 55%, 60%, 65%, 70%, 75% and 80%. i.e .width-5-per
Fixed Height

Add one of these to class to set fixed height of the content.

Classes Description
.height-{size} Set content fixed height in pixel of selected size where size can be 50, 100, 150, 200, 250, 300, 350, 400, 450, 500, 550, 600, 650, 700, 750 and 800. i.e .height-50
.height-{size}-per Set content fixed height in percentage of selected size where size can be 5%, 10%, 15%, 20%, 25%, 30%, 35%, 40%, 45%, 50%, 55%, 60%, 65%, 70%, 75% and 80%. i.e .height-5-per

Spacing

Bootstrap includes a wide range of shorthand responsive margin and padding utility classes to modify an element's appearance.

How it works

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. Classes are built from a default Sass map ranging from .25rem to 3rem.

Notation

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 * .25
  • 2 - (by default) for classes that set the margin or padding to $spacer * .5
  • 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.5
  • 5 - (by default) for classes that set the margin or padding to $spacer * 3
  • auto - for classes that set the margin to auto

(You can add more sizes by adding entries to the $spacers Sass map variable.)

Horizontal centering

Additionally, Bootstrap also includes an .mx-auto class for horizontally centering fixed-width block level content—that is, content that has display: block and a width set—by setting the horizontal margins to auto.

Centered element

                <div class="mx-auto" style="width: 200px;">
                  Centered element
                </div>
                

Vertical alignment

Easily change the vertical alignment of inline, inline-block, inline-table, and table cell elements.

Change the alignment of elements with the vertical-alignment utilities. Please note that vertical-align only affects inline, inline-block, inline-table, and table cell elements.

Choose from .align-baseline, .align-top, .align-middle, .align-bottom, .align-text-bottom, and .align-text-top as needed.

baseline top middle bottom text-top text-bottom
Classes Description
.align-top Changes element's vertical alignment to top.
.align-middle Changes element's vertical alignment to middle.
.align-bottom Changes element's vertical alignment to bottom.
.align-baseline Changes element's vertical alignment to baseline.
.align-text-top Top of the element is aligned with the top of the parent element's font.
.align-text-bottom The bottom of the element is aligned with the bottom of the parent element's font.

With table cells:

baseline top middle bottom text-top text-bottom

                <table style="height: 100px;">
                  <tbody>
                    <tr>
                      <td class="align-baseline">baseline</td>
                      <td class="align-top">top</td>
                      <td class="align-middle">middle</td>
                      <td class="align-bottom">bottom</td>
                      <td class="align-text-top">text-top</td>
                      <td class="align-text-bottom">text-bottom</td>
                    </tr>
                  </tbody>
                </table>
                

Transformations

Add one of these to class to change transformations of the element.

Classes Description
.icon-rotate-right-45 icon-rotate-rights element 45 degreees clockwise.
.icon-rotate-right-45-inverse icon-rotate-rights element 45 degreees anti-clockwise.
.icon-rotate-right-90 icon-rotate-rights element 90 degreees clockwise.
.icon-rotate-right-90-inverse icon-rotate-rights element 90 degreees anti-clockwise.
.icon-rotate-right-180 icon-rotate-rights element 180 degreees clockwise.
.icon-rotate-right-180-inverse icon-rotate-rights element 180 degreees anti-clockwise.
.spinner Set element infinite clockwise rotation.
.spinner-reverse Set element infinite anti-clockwise rotation.

Image

Add one of these to class to change image size and other property.

Classes Description
.bg-cover Scale the background image to be as large as possible so that the background area is completely covered by the background image.
.bg-repeat Do not repeat the background image.
.bg-no-repeat Repeat the background image.

Content helpers

z-index

Add one of these classes to change the elemets' z-index properties.

Classes Description
.zindex-minus-1 Set element's z-index value minus 1.
.zindex-minus-2 Set element's z-index value minus 2.
.zindex-minus-3 Set element's z-index value minus 3.
.zindex-minus-4 Set element's z-index value minus 4.
.zindex-0 Set element's z-index value 0.
.zindex-1 Set element's z-index value 1.
.zindex-2 Set element's z-index value 2.
.zindex-3 Set element's z-index value 3.
.zindex-4 Set element's z-index value 4.
Edges

Add one of these to removes the slected edge of the elements, works with absolute, fixed and relative positioned elements.

Classes Description
.no-edge-top Removes the top edge of the element.
.no-edge-bottom Removes the bottom edge of the element.
.no-edge-left Removes the left edge of the element.
.no-edge-right Removes the right edge of the element.
Cursors

Add one of these to class to change cursor style.

Classes Description
.cursor-pointer The cursor is a pointer and indicates a link. Useful for user interaction feedback.
.cursor-move The cursor indicates something is to be moved. Used in shortable components
.cursor-default Set cursor to browser default style.
.cursor-progress The cursor indicates that the program is busy (in progress).
.cursor-not-allowed The cursor indicates that the requested action will not be executed.
Overflow

Add one of these to class to change overflow of element.

Classes Description
.overflow-visible Default. The overflow is not clipped. It renders outside the element's box.
.overflow-hidden The overflow is clipped, and the rest of the content will be invisible.
.overflow-auto If overflow is clipped, a scrollbar should be added to see the rest of the content.
.overflow-scroll The overflow is clipped, but a scrollbar is added to see the rest of the content.
List

Add one of these to class to change list style.

Classes Description
.no-bullets No marker is shown in the list item.
.bullets-inside Indents the marker and the text. The bullets appear inside the content flow
.list-style-circle Set the list item marker to circle.
.list-style-square Set the list item marker to square.

Visibility

Control the visibility, without modifying the display, of elements with visibility utilities.

Set the visibility of elements with our visibility utilities. These do not modify the display value at all and are helpful for hiding content from most users, but still keeping them for screen readers.

Apply .visible or .invisible as needed.


                <div class="visible">...</div>
                <div class="invisible">...</div>