summaryrefslogtreecommitdiff
path: root/_sass/common/classes/_spacing.scss
diff options
context:
space:
mode:
Diffstat (limited to '_sass/common/classes/_spacing.scss')
-rw-r--r--_sass/common/classes/_spacing.scss81
1 files changed, 81 insertions, 0 deletions
diff --git a/_sass/common/classes/_spacing.scss b/_sass/common/classes/_spacing.scss
new file mode 100644
index 0000000..c07fdce
--- /dev/null
+++ b/_sass/common/classes/_spacing.scss
@@ -0,0 +1,81 @@
+@mixin make-spacing($property, $side, $spacer, $negative: false) {
+
+ $css_property: null;
+ $css_sides: null;
+
+ @if ($property == "m") {
+ $css_property: "margin";
+ } @else if ($property == "p") {
+ $css_property: "padding";
+ }
+
+ @if ($side == "t") {
+ $css_sides: ("top");
+ }
+ @else if ($side == "b") {
+ $css_sides: ("bottom");
+ }
+ @else if ($side == "l") {
+ $css_sides: ("left");
+ }
+ @else if ($side == "r") {
+ $css_sides: ("right");
+ }
+ @else if ($side == "x") {
+ $css_sides: ("left", "right");
+ }
+ @else if ($side == "y") {
+ $css_sides: ("top", "bottom");
+ }
+ @else if ($side == "") {
+ $css_sides: ("");
+ }
+
+ @each $side in $css_sides {
+ @if ($spacer == "auto") {
+ @if ($side == "") {
+ #{$css_property}: auto;
+ } @else {
+ #{$css_property}-#{$side}: auto;
+ }
+ } @else {
+ @if ($side == "") {
+ @if ($negative == true) {
+ #{$css_property}: - map-get($spacers, $spacer);
+ } @else {
+ #{$css_property}: map-get($spacers, $spacer);
+ }
+ } @else {
+ @if ($negative == true) {
+ #{$css_property}-#{$side}: - map-get($spacers, $spacer);
+ } @else {
+ #{$css_property}-#{$side}: map-get($spacers, $spacer);
+ }
+ }
+ }
+ }
+}
+
+@mixin make-spacings() {
+ $propertys: ("m", "p");
+ $sides: ("t", "b", "l", "r", "x", "y", "");
+ $spacers: (0, 1, 2, 3, 4, 5);
+
+ @each $property in $propertys {
+ @each $side in $sides {
+ @each $spacer in $spacers {
+ .#{$property}#{$side}-#{$spacer} {
+ @include make-spacing($property, $side, $spacer);
+ }
+ }
+ }
+ }
+
+ @each $side in $sides {
+ .m#{$side}-auto {
+ @include make-spacing("m", $side, "auto");
+ }
+ }
+}
+
+@include make-spacings();