# Spacing
A custom spacing scale, with padding and margin utility classes.
Basic spacing units are defined in /styles/settings/spacing.scss. These units are based on a base of 12px.
$spacer: 12px; // base spacing unit
$spacers: (
0: 0, // 0
1: $spacer * 0.5, // 6px
2: $spacer, // 12px
3: $spacer * 2, // 24px
4: $spacer * 3, // 36px
5: $spacer * 4, // 48px
6: $spacer * 5 // 60px
);
# Units
| Step | Size | Helper | |
|---|---|---|---|
| 0 | 0 | space(0) | |
| 1 | 6px | space(1) | |
| 2 | 12px | space(2) | |
| 3 | 24px | space(3) | |
| 4 | 36px | space(4) | |
| 5 | 48px | space(5) | |
| 6 | 60px | space(6) |
From this, we create (Tachyon/Tailwind-inspired) padding and margin classes, which may be applied to any element to easily add a prescribed amount (ie. defined and derived from our settings) of space around an element.
# Padding
| Class | Properties |
|---|---|
| .pa-0 | padding: 0; |
| .pa-1 | padding: 6px; |
| .pa-2 | padding: 12px; |
| .pa-3 | padding: 24px; |
| .pa-4 | padding: 36px; |
| .pa-5 | padding: 48px; |
| .pa-6 | padding: 60px; |
| .py-1 | padding-top: 6px;padding-bottom: 6px; |
| .py-2 | padding-top: 12px;padding-bottom: 12px; |
| .py-3 | padding-top: 24px;padding-bottom: 24px; |
| .py-4 | padding-top: 36px;padding-bottom: 36px; |
| .py-5 | padding-top: 48px;padding-bottom: 48px; |
| .py-6 | padding-top: 60px;padding-bottom: 60px; |
| .px-0 | padding-right: 0;padding-left: 0; |
| .px-1 | padding-right: 6px;padding-left: 6px; |
| .px-2 | padding-right: 12px;padding-left: 12px; |
| .px-3 | padding-right: 24px;padding-left: 24px; |
| .px-4 | padding-right: 36px;padding-left: 36px; |
| .px-5 | padding-right: 48px;padding-left: 48px; |
| .px-6 | padding-right: 60px;padding-left: 60px; |
| .pt-0 | padding-top: 0; |
| .pt-1 | padding-top: 6px; |
| .pt-2 | padding-top: 12px; |
| .pt-3 | padding-top: 24px; |
| .pt-4 | padding-top: 36px; |
| .pt-5 | padding-top: 48px; |
| .pt-6 | padding-top: 60px; |
| .pr-0 | padding-right: 0; |
| .pr-1 | padding-right: 6px; |
| .pr-2 | padding-right: 12px; |
| .pr-3 | padding-right: 24px; |
| .pr-4 | padding-right: 36px; |
| .pr-5 | padding-right: 48px; |
| .pr-6 | padding-right: 60px; |
| .pb-0 | padding-bottom: 0; |
| .pb-1 | padding-bottom: 6px; |
| .pb-2 | padding-bottom: 12px; |
| .pb-3 | padding-bottom: 24px; |
| .pb-4 | padding-bottom: 36px; |
| .pb-5 | padding-bottom: 48px; |
| .pb-6 | padding-bottom: 60px; |
| .pl-0 | padding-left: 0; |
| .pl-1 | padding-left: 6px; |
| .pl-2 | padding-left: 12px; |
| .pl-3 | padding-left: 24px; |
| .pl-4 | padding-left: 36px; |
| .pl-5 | padding-left: 48px; |
| .pl-6 | padding-left: 60px; |
# Usage
Control the padding on an element using a p{a|x|y|t|r|b|l}-{size} class.
Modifiers
a = all
x = x-axis (left, right)
y = y-axis (top, bottom)
t = top
r = right
b = bottom
l = left
EXAMPLE
.pa-3
.pt-5
.py-4
.px-2
<div class="bg-light-grey pa-3"><span class="...">.pa-3</span></div>
<div class="bg-light-grey pt-5"><span class="...">.pt-5</span></div>
<div class="bg-light-grey py-4"><span class="...">.py-4</span></div>
<div class="bg-light-grey px-2"><span class="...">.px-2</span></div>
# Margin
| Class | Properties |
|---|---|
| .ma-0 | margin: 0; |
| .ma-1 | margin: 6px; |
| .ma-2 | margin: 12px; |
| .ma-3 | margin: 24px; |
| .ma-4 | margin: 36px; |
| .ma-5 | margin: 48px; |
| .ma-6 | margin: 60px; |
| .my-1 | margin-top: 6px;margin-bottom: 6px; |
| .my-2 | margin-top: 12px;margin-bottom: 12px; |
| .my-3 | margin-top: 24px;margin-bottom: 24px; |
| .my-4 | margin-top: 36px;margin-bottom: 36px; |
| .my-5 | margin-top: 48px;margin-bottom: 48px; |
| .my-6 | margin-top: 60px;margin-bottom: 60px; |
| .mx-0 | margin-right: 0;margin-left: 0; |
| .mx-1 | margin-right: 6px;margin-left: 6px; |
| .mx-2 | margin-right: 12px;margin-left: 12px; |
| .mx-3 | margin-right: 24px;margin-left: 24px; |
| .mx-4 | margin-right: 36px;margin-left: 36px; |
| .mx-5 | margin-right: 48px;margin-left: 48px; |
| .mx-6 | margin-right: 60px;margin-left: 60px; |
| .mt-0 | margin-top: 0; |
| .mt-1 | margin-top: 6px; |
| .mt-2 | margin-top: 12px; |
| .mt-3 | margin-top: 24px; |
| .mt-4 | margin-top: 36px; |
| .mt-5 | margin-top: 48px; |
| .mt-6 | margin-top: 60px; |
| .mr-0 | margin-right: 0; |
| .mr-1 | margin-right: 6px; |
| .mr-2 | margin-right: 12px; |
| .mr-3 | margin-right: 24px; |
| .mr-4 | margin-right: 36px; |
| .mr-5 | margin-right: 48px; |
| .mr-6 | margin-right: 60px; |
| .mb-0 | margin-bottom: 0; |
| .mb-1 | margin-bottom: 6px; |
| .mb-2 | margin-bottom: 12px; |
| .mb-3 | margin-bottom: 24px; |
| .mb-4 | margin-bottom: 36px; |
| .mb-5 | margin-bottom: 48px; |
| .mb-6 | margin-bottom: 60px; |
| .ml-0 | margin-left: 0; |
| .ml-1 | margin-left: 6px; |
| .ml-2 | margin-left: 12px; |
| .ml-3 | margin-left: 24px; |
| .ml-4 | margin-left: 36px; |
| .ml-5 | margin-left: 48px; |
| .ml-6 | margin-left: 60px; |
# Usage
Control the margin on an element using a m{a|x|y|t|r|b|l}-{size} class.
EXAMPLE
.ma-4
.ml-5
.my-4
.mr-2
<div class="bg-light-grey"><span class="ma-4 ...">.ma-4</span></div>
<div class="bg-light-grey"><span class="ml-5 ...">.ml-5</span></div>
<div class="bg-light-grey"><span class="my-4 ...">.my-4</span></div>
<div class="bg-light-grey"><span class="mr-2 ...">.mr-2</span></div>