2016-09-09 06:48:17 +02:00
---
layout: docs
title: Spacing
2017-05-28 20:25:59 +02:00
description: Bootstrap includes a wide range of shorthand responsive margin and padding utility classes to modify an element's appearance.
2016-09-09 06:48:17 +02:00
group: utilities
2017-05-28 20:25:59 +02:00
toc: true
2016-09-09 06:48:17 +02:00
---
2017-05-28 20:25:59 +02:00
## How it works
2016-11-25 23:01:06 +01:00
2017-05-28 20:25:59 +02:00
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` .
2016-11-25 23:01:06 +01:00
2016-11-01 05:13:05 +01:00
## 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` .
2016-09-09 06:48:17 +02:00
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`
2016-10-21 00:36:09 +02:00
* blank - for classes that set a `margin` or `padding` on all 4 sides of the element
2016-09-09 06:48:17 +02:00
Where *size* is one of:
* `0` - for classes that eliminate the `margin` or `padding` by setting it to `0`
2017-03-05 22:07:38 +01:00
* `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`
2017-09-27 09:43:43 +02:00
* `auto` - for classes that set the `margin` to auto
2016-09-09 06:48:17 +02:00
(You can add more sizes by adding entries to the `$spacers` Sass map variable.)
2016-11-01 05:13:05 +01:00
## Examples
2016-09-09 06:48:17 +02:00
Here are some representative examples of these classes:
{% highlight scss %}
2016-09-09 07:16:28 +02:00
.mt-0 {
2016-09-09 06:48:17 +02:00
margin-top: 0 !important;
}
2016-09-09 07:16:28 +02:00
.ml-1 {
2017-03-05 21:20:44 +01:00
margin-left: ($spacer * .25) !important;
2016-09-09 06:48:17 +02:00
}
2016-09-09 07:16:28 +02:00
.px-2 {
2017-03-05 21:20:44 +01:00
padding-left: ($spacer * .5) !important;
padding-right: ($spacer * .5) !important;
2016-09-09 06:48:17 +02:00
}
2016-09-09 07:16:28 +02:00
.p-3 {
2017-03-05 22:07:38 +01:00
padding: $spacer !important;
2016-09-09 06:48:17 +02:00
}
{% endhighlight %}
### Horizontal centering
2016-11-23 20:28:17 +01:00
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` .
2016-09-09 06:48:17 +02:00
< div class = "bd-example" >
2016-09-09 07:16:28 +02:00
< div class = "mx-auto" style = "width: 200px; background-color: rgba(86,61,124,.15);" >
2016-09-09 06:48:17 +02:00
Centered element
< / div >
< / div >
{% highlight html %}
2016-09-09 07:16:28 +02:00
< div class = "mx-auto" style = "width: 200px;" >
2016-09-09 06:48:17 +02:00
Centered element
< / div >
{% endhighlight %}