.row
and .col
.
Both of these has a bunch of modifiers prefixed with double dashes which should be used on top of the base class.
<div class="row row--*">
<div class="col col--*">...</div>
</div>
.col--*
.
<div class="row">
<div class="col col--1">...</div>
<div class="col col--2">...</div>
<div class="col col--3">...</div>
...
</div>
<div class="row">
<div class="col col--6 col--offset-6">...</div>
<div class="col col--7 col--offset-5">...</div>
<div class="col col--8 col--offset-4">...</div>
</div>
.col--order-*
.
This becomes especially powerful when combining with responsive breakpoints (See below).
<div class="row">
<div class="col col--4 col--order-3">1</div>
<div class="col col--4 col--order-2">2</div>
<div class="col col--4 col--order-1">3</div>
</div>
.col--sm-*
for screen sizes > 768px..col--md-*
for screen sizes > 992px..col--lg-*
for screen sizes > 1200px..col--sm-*
, .col--sm-offset-*
and .col--sm-order-*
.
If no prefix is set it will be applied to all screen sizes unless overriden by a prefixed modifier.
<div class="row">
<div class="col col--12 col--sm-5 col--md-4 col--lg-3">...</div>
<div class="col col--12 col--sm-7 col--md-8 col--lg-9">...</div>
</div>
<div class="row row--*">...;</div>
.row--autofill
to evenly distribute the width among the columns.
<div class="row row--autofill">
<div class="col">...</div>
<div class="col">...</div>
</div>
.row--full-height
and it's done.
Often though you also want the child of the column to be full height. This is supported but requires some additional markup.
<div class="row row--full-height">
<div class="col col--4">
<div class="col__inner">...</div>
</div>
<div class="col col--4">
<div class="col__inner">...</div>
</div>
<div class="col col--4">
<div class="col__inner">...</div>
</div>
</div>
.row--middle
to align the columns.
<div class="row row--middle">
<div class="col col--4">...</div>
<div class="col col--4">...</div>
<div class="col col--4">...</div>
</div>
.row--bottom
.
<div class="row row--bottom">
<div class="col col--4">...</div>
<div class="col col--4">...</div>
<div class="col col--4">...</div>
</div>
.row--center
. This can be neat if you have a size that doesn't allow centering by using offsets.
<div class="row row--center">
<div class="col col--4">...</div>
</div>
.row--right
.
<div class="row row--right">
<div class="col col--4">...</div>
</div>
.row--around
.
<div class="row row--around">
<div class="col col--3">...</div>
<div class="col col--3">...</div>
<div class="col col--3">...</div>
</div>
.row--between
.
<div class="row row--between">
<div class="col col--3">...</div>
<div class="col col--3">...</div>
<div class="col col--3">...</div>
</div>
<div class="col col--*">...</div>
.col--full-height
.
Note: Also requires the content of the column to be placed within a .col__inner
if the child also should be full height.
<div class="row">
<div class="col col--4">...</div>
<div class="col col--4 col--full-height">
<div class="col__inner">...</div>
</div>
<div class="col col--4">...</div>
</div>
.col--center
.
<div class="row">
<div class="col col--4">...</div>
<div class="col col--4 col--center">...</div>
<div class="col col--4">...</div>
</div>
.col--bottom
.
<div class="row">
<div class="col col--4">...</div>
<div class="col col--4 col--bottom">...</div>
<div class="col col--4">...</div>
</div>