Sha256: 86c7b0f23e0532e1528317c33f3db4817cc64c43b99ae52c9363c2744b2e6d80

Contents?: true

Size: 2 KB

Versions: 1

Compression:

Stored size: 2 KB

Contents

// Container Syntax
// ================

// Container [mixin]
// -----------------
// Set a container element
// - [$grid]  : <settings>
@mixin container(
  $grid: $susy
) {
  $grid       : parse-grid($grid);

  $width      : get-container-width($grid);
  $justify    : parse-container-position(susy-get(container-position, $grid));
  $property   : if(susy-get(math, $grid) == static, width, max-width);

  $box        : susy-get(box-sizing, $grid);

  @if $box {
    @include susy-box-sizing($box);
  }

  @include float-container($width, $justify, $property);
  @include show-grid($grid);
}

// Container [function]
// --------------------
// Return container width
// - [$grid]  : <settings>
@function container(
  $grid: $susy
) {
  $grid: parse-grid($grid);
  @return get-container-width($grid);
}

// Get Container Width
// -------------------
// Calculate the container width
// - [$grid]: <settings>
@function get-container-width(
  $grid: $susy
) {
  $grid           : parse-grid($grid);
  $width          : susy-get(container, $grid);
  $column-width   : susy-get(column-width, $grid);

  @if not $width or $width == auto {
    @if $column-width {
      $columns        : susy-get(columns, $grid);
      $gutters        : susy-get(gutters, $grid);
      $spread         : if(is-split($grid), wide, narrow);
      $width          : calculate-container-width($columns, $gutters, $column-width, $spread);
    } @else {
      // if we have nothing, default to 100%
      $width: 100%;
    }
  }

  @return $width;
}

// Parse Container Position
// ------------------------
// Parse the $container-position into margin values.
// - [$justify]   : left | center | right | <length> [<length>]
@function parse-container-position(
  $justify: map-get($susy-defaults, container-position)
) {
  $return: if($justify == left, 0, auto) if($justify == right, 0, auto);

  @if not index(left right center, $justify) {
    $return: nth($justify, 1);
    $return: $return if(length($justify) > 1, nth($justify, 2), $return);
  }

  @return $return;
}

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
susy-2.0.0.beta.1 sass/susy/language/susy/_container.scss