Clearings

Containers of floated elements need to be clearfixed. Use the u-clear utility class for this.

<div class="u-clear">
  <div class="u-span-6 u-bg-dark-gray u-pad u-nudge">my parent is clearfixed</div>
  <div class="u-span-6 u-bg-dark-gray u-pad u-nudge">my parent is clearfixed</div>
</div>
<div class="u-clear">
  <div class="u-span-6 u-bg-dark-gray u-pad u-nudge">.u-span-6</div>
  <div class="u-span-6 u-clear-both u-bg-dark-gray u-pad u-nudge">.u-span-6.u-clear-both</div>
  <div class="u-span-6 u-bg-dark-gray u-pad u-nudge">.u-span-6</div>
</div>

 

Containers

The u-container class possibly the most widely used utility class. It’s used to confine content to the width of the page. It employs the outer-container mixin and $container_padding variable.

.u-container {
  @include outer-container;
  @extend .u-clear;
  position: relative;
  padding-left: $container_padding;
  padding-right: $container_padding;
  width: 100%;
}
<div class="u-container u-bg-light-gray u-text-center">
  <div class="u-push">
    <strong>.u-container</strong>
  </div>
  <div class="u-bg-dark-gray u-push u-pad">
    <span>inner content</span>
  </div>
  <br/>
</div>

 

Flexbox

Flex wrap and flex align utilities are available to compliment the u-display-flex class.

.u-flex-wrap {
  @include flex-wrap(wrap);
}
.u-align-items-flex-start {
  @include align-items(flex-start);
}
.u-align-items-flex-end {
 @include align-items(flex-end);
}
.u-align-items-center {
 @include align-items(center);
}

 

Centering Elements

Horizontally center an element with a fixed width.

<img class="u-center" src="//unsplash.it/350/200" width="350" height="200" alt="centered image"/>

You can also use .u-position-center to center an element both horizontally AND vertically within a container. The container must have position: relative.

<div style="position:relative; height:400px">
  <img class="u-position-center" src="//unsplash.it/350/200" width="350" height="200" alt="centered image"/>
</div>

 

Floats

<div class="u-clear">
  <div class="u-float-left u-bg-lighter-gray u-pad">.u-float-left</div>
  <div class="u-float-right u-bg-lighter-gray u-pad">.u-float-right</div>
</div>

 

Margins & Padding

$leading: 1.5rem;
//
.u-hug     { margin-top: 0; }
.u-nudge   { margin-top: $leading / 2; }
.u-push    { margin-top: $leading; }
.u-push-2x { margin-top: $leading * 2; }
.u-push-3x { margin-top: $leading * 3; }
.u-push-4x { margin-top: $leading * 4; }
.u-push-5x { margin-top: $leading * 5; }
.u-push-6x { margin-top: $leading * 6; }
//
.u-pad     { padding: $leading; }