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; }