Search code examples
twitter-bootstrapwhitespacevertical-alignmenttwitter-bootstrap-2

Add vertical whitespace using Twitter Bootstrap?


What's the best way to add vertical whitespace using Twitter's Bootstrap?

For example, let's say that I am creating a landing page and would like a bit (100px) of blank whitespace above and below a certain button. Obviously, I could create a certain class for that particular button. But, I would think that Bootstrap should have a DRY way of adding in vertical blank spaces.


Solution

  • In Bootstrap 4/5 there are spacing utilites (BS4, BS5).

    Excerpt from the documentation:

    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 (please note differences in BS4 and BS5):

    • 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 (Bootstrap 4)
    • s - for classes that set margin-left or padding-left (Bootstrap 5)
    • r - for classes that set margin-right or padding-right (Bootstrap 4)
    • e - for classes that set margin-right or padding-right (Bootstrap 5)
    • 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

    So to have some extra vertical space above and below an element you would use my-5 class.