This is a test of the notification banner broadcast system

Flexbox

Flexbox Playground | Mixin Documentation

Things to remember:

  1. Flexed items in the same row will all become the same height as the tallest item (no need for .heightEQ).
    1. This also means that if grid items wrap, they potentially won’t be the same height as the items above. Look at the below examples to see visually how it renders.
    2. This works on slick sliders (!), just declare @include flexbox(); on the slider element.
  2. You can flex a flexed item. For example, using the @includes flexbox(); on a grid item will allow to you have control over the interior of the grid. This allows you to easily center content as needed horizontally, vertically, or both (see Children examples)
  3. Flexbox works IE 10+ but there are compatibility issues with 10 and 11 (See troubleshooting).

Troubleshooting:

  1. If your flex child (grid item) is an <a> tag it needs to either be declared a block element or an inline block element. This is a layout issue within IE 10 and 11 with inline <a> elements.
  2. If you are applying a flex to a child that is being flexed by the parent you need to apply the @include flex(); mixin to it (child). There is a layout issue with IE 10 and 11 that allows the child element in this situation to extend beyond the boundaries of the parent.

Menu:

Structure:

Extra Options:


Base Styles

Parent div: .flex-row

Applied mixins:


Layout (grid)

Parent div: .flex-row

Child element(s): .grid-*

.grid-8 .md-grid-6 .sm-grid-12
.grid-4 .md-grid-6 .sm-grid-12
.grid-6 .xs-grid-12
.grid-6 .xs-grid-12
.grid-4
.grid-4
.grid-4

Layout (box-grid)

Parent div: .flex-row .grid-* (auto responsive)

.flex-row .grid-6

Flex Child
Flex Child
Flex Child
Flex Child
Flex Child

.flex-row .grid-4

Flex Child
Flex Child
Flex Child
Flex Child
Flex Child

.flex-row .grid-3

Flex Child
Flex Child
Flex Child
Flex Child
Flex Child

.flex-row .grid-2

Flex Child
Flex Child
Flex Child
Flex Child
Flex Child
Flex Child

Row Examples

Row: Left Aligned

Parent div: .flex-row

Applied mixins:

  • @include justify-content( flex-start );
Flex Child
Flex Child
Flex Child
Flex Child
Flex Child

Row: Right Aligned

Parent div: .flex-row

Applied mixins:

  • @include justify-content( flex-end );
Flex Child
Flex Child
Flex Child
Flex Child
Flex Child

Row: No Wrap

Parent div: .flex-row

Applied mixins:

  • @include flex-wrap( nowrap );

Notes: Grid will no longer wrap. Applied width will only extend to max width of parent

Flex Child
Flex Child
Flex Child
Flex Child
Flex Child

Row: Reverse

Parent div: .flex-row

Applied mixins:

  • @include flex-direction( row-reverse );

Notes: reverse grid items

Flex Child
Flex Child
Flex Child
Flex Child
Flex Child

Column Examples

Column

Parent div: .flex-row .column .grid-3

Applied mixins:

  • @include flex-direction( column );
  • @include align-items( center );

Notes: Display grid items in a column instead of a row. Grid items no longer have same height applied (only applies to row)

Flex Child
Flex Child
Flex Child
Flex Child
Flex Child

Column: Reverse

Parent div: .flex-row .column-reverse .grid-6

Applied mixins:

  • @include flex-direction( column-reverse );
  • @include align-items( center );
Flex Child
Flex Child
Flex Child
Flex Child
Flex Child

Children Examples: Flex-ception

Flex a flex.

Parent div: .flex-grid (example)

  • Default
  • @include align-self( center )
  • @include align-self( flex-start )
  • @include align-self( flex-end )

Notes: Flexed children will become the height of its parent by default.

Flex Child
Flex Child
Flex Child
Flex Child

Center flexed items

Parent div: .flex-grid (example)

  • @include justify-content( center );

Notes: center a flexed item

Flex Child
Flex Child
Flex Child
Flex Child

Misc. Examples:

Centering

Before

Default

Lorem ipsum dolor sit amet.

After

Default

Lorem ipsum dolor sit amet.

Re-ordering

Before

Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet.

Default Wrapping

Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet.

After

Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet.

Altered Ordering

Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet.

Before

Flex Child
Flex Child
Flex Child
Flex Child
Flex Child
Flex Child

After

Flex Child
Flex Child
Flex Child
Flex Child
Flex Child
Flex Child

Precise Spacing

display: inline-block;

display: inline;

@include flexbox();

Spacing without margin

@include justify-content( center );

@include justify-content( space-between );

@include justify-content( space-around );

@include justify-content( space-evenly );

Create Your Own Grid

Parent div: .flex-row

Default

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer ut dolor et risus cursus porta. Nullam tincidunt pretium mauris. Maecenas eu orci a magna eleifend tristique finibus a turpis. Nullam non augue dolor. Cras ac arcu sapien. In malesuada et eros nec efficitur. Morbi facilisis, eros quis sagittis gravida, leo eros tempor lorem, a congue tortor dolor et dui. Aliquam porta malesuada tortor a cursus. Aliquam erat volutpat. Quisque non tellus lorem. Aliquam condimentum finibus facilisis. Sed tempus tristique mattis. Pellentesque lobortis velit at sapien ornare semper.