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. |
Quickly and easily clear floated content within a container by adding a clearfix utility.
Easily clear float
s 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>
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>
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).
<div class="d-inline bg-success">d-inline</div>
<div class="d-inline bg-success">d-inline</div>
<span class="d-block bg-primary">d-block</span>
<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
|
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>
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.
<div class="d-flex p-2">I'm a flexbox container!</div>
<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.
<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.
<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
.
<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).
<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).
<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.
<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
.
<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
.
<div class="d-flex flex-nowrap">
...
</div>
<div class="d-flex flex-wrap">
...
</div>
<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.
<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.
<div class="d-flex align-content-start flex-wrap">
...
</div>
<div class="d-flex align-content-end flex-wrap">
...
</div>
<div class="d-flex align-content-center flex-wrap">
...
</div>
<div class="d-flex align-content-between flex-wrap">
...
</div>
<div class="d-flex align-content-around flex-wrap">
...
</div>
<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
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:
<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.
<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
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>
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>
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>
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.
<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>
<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.
<img class="mw-100" src="..." alt="Max-width 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
|
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 setmargin
-
p
- for classes that setpadding
Where sides is one of:
-
t
- for classes that setmargin-top
orpadding-top
-
b
- for classes that setmargin-bottom
orpadding-bottom
-
l
- for classes that setmargin-left
orpadding-left
-
r
- for classes that setmargin-right
orpadding-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
orpadding
on all 4 sides of the element
Where size is one of:
-
0
- for classes that eliminate themargin
orpadding
by setting it to0
-
1
- (by default) for classes that set themargin
orpadding
to$spacer * .25
-
2
- (by default) for classes that set themargin
orpadding
to$spacer * .5
-
3
- (by default) for classes that set themargin
orpadding
to$spacer
-
4
- (by default) for classes that set themargin
orpadding
to$spacer * 1.5
-
5
- (by default) for classes that set themargin
orpadding
to$spacer * 3
-
auto
- for classes that set themargin
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
.
<div class="mx-auto" style="width: 200px;">
Centered element
</div>
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.
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>
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. |
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. |
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. |
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>