@mixin span-columns($span: $columns of $container-columns, $display: block) { $columns: nth($span, 1); $container-columns: container-span($span); // Set nesting context (used by shift()) $parent-columns: get-parent-columns($container-columns) !global; $direction: get-direction($layout-direction, $default-layout-direction); $opposite-direction: get-opposite-direction($direction); $display-table: is-display-table($container-display-table, $display); @if $display-table { display: table-cell; width: percentage($columns / $container-columns); } @else { float: #{$opposite-direction}; @if $display != no-display { display: block; } @if $display == collapse { @warn "The 'collapse' argument will be deprecated. Use 'block-collapse' instead." } @if $display == collapse or $display == block-collapse { width: flex-grid($columns, $container-columns) + flex-gutter($container-columns); &:last-child { width: flex-grid($columns, $container-columns); } } @else { margin-#{$direction}: flex-gutter($container-columns); width: flex-grid($columns, $container-columns); &:last-child { margin-#{$direction}: 0; } } } }