Sha256: 7f00d1a4a12142c5f0bb576c02008dafbc251d3bcdb12d41054cde2bf50379bd

Contents?: true

Size: 1.7 KB

Versions: 1

Compression:

Stored size: 1.7 KB

Contents

// Margin Syntax
// =============

// Pre
// ---
// Add spanning-margins before an element.
// - $span  : <span>
@mixin pre(
  $span
) {
  $span   : map-merge((spread: wide), parse-span($span));
  $flow   : span-get(flow, $span);
  $split  : if(span-get(gutter-position, $span) == split, true, false);
  $width  : if($split, span($span) + gutter($span), span($span));

  @include margin-output($width, null, $flow);
}

// Post
// ----
// Add spanning-margins after an element.
// - $span  : <span>
@mixin post(
  $span
) {
  $span   : map-merge((spread: wide), parse-span($span));
  $flow   : span-get(flow, $span);
  $split  : if(span-get(gutter-position, $span) == split, true, false);
  $width  : if($split, span($span) + gutter($span), span($span));

  @include margin-output(null, $width, $flow);
}

// Push
// ----
// Simple synonymn for pre.
// - $span  : <span>
@mixin push(
  $span
) {
  @include pre($span);
}

// Pull
// ----
// Add negative spanning-margins before an element.
// - $span  : <span>
@mixin pull(
  $span
) {
  $span   : map-merge((spread: wide), parse-span($span));
  $flow   : span-get(flow, $span);
  $split  : if(span-get(gutter-position, $span) == split, true, false);
  $width  : if($split, 0 - span($span) + gutter($span), 0 - span($span));

  @include margin-output($width, null, $flow);
}

// Squish
// ------
// Add spanning-margins before and after an element.
// - $pre     : <span>
// - [$post]  : <span>
@mixin squish(
  $pre,
  $post: $pre
) {
  $pre      : if(length($pre) == 1 and length($post) > 1, set-nth($post, 1, $pre), $pre);
  $pre      : map-merge((spread: wide), parse-span($pre));
  $post     : map-merge((spread: wide), parse-span($post));

  @include pre($pre);
  @include post($post);
}

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
susy-2.0.0.alpha.5 sass/susy/language/susy/_margins.scss