Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Flexbox is cool and fun

Flexbox is cool and fun

A quick session on how we've applied default flex properties to the element in the GoCardless Pro Dashboard, our web app for managing your recurring payments, customers & more.

James Shedden

June 16, 2015
Tweet

More Decks by James Shedden

Other Decks in Technology

Transcript

  1. <div class=“layout”> <div class=“layout”> <div>Me</div> <div class=“layout__flex”> Us </div> </div>

    <div class=“layout__flex”> <div>You</div> <div class=“layout__flex”> <div class=“layout”> <div>Them</div> <div class=“layout__flex”> Everyone else </div> </div> </div> </div> </div>
  2. <div class=“layout u-full-height”> <div class=“layout”> <div>Me</div> <div class=“layout__flex”> Us </div>

    </div> <div class=“layout__flex”> <div>You</div> <div class=“layout__flex u-relative”> <div class=“layout u-absolute u-full-width u-full-height”> <div>Them</div> <div class=“layout__flex layout__flex—-no-shrink”> Everyone else </div> </div> </div> </div> </div>
  3. <div class=“layout u-full-height”> <div class=“layout”> <div>Me</div> <div class=“layout__flex”> Us </div>

    </div> <div class=“layout__flex”> <div>You</div> <div class=“layout__flex u-relative”> <div class=“layout u-absolute u-full-width u-full-height”> <div class=“layout”> <div class=“layout u-full-height”> <div class=“layout”> <div>Me</div> <div class=“layout__flex”> Us </div> </div> <div class=“layout__flex”> <div>You</div> <div class=“layout__flex u-relative”> <div class=“layout u-absolute u-full-width u-full-height”> <div>Them</div> <div class=“layout__flex layout__flex—-no-shrink”> Everyone else </div> </div> </div> </div> </div> </div> <div class=“layout__flex layout__flex—-no-shrink”> Everyone else </div> </div> </div> </div> </div>
  4. div { /* All divs are flex containers */ display:

    flex; /* They’re also all flex items */ flex: 1 1 auto; /* Stack divs vertically - maintain default div behaviour */ flex-direction: column; }
  5. <div class=“u-direction-row”> <div class=“u-flex-none”> Me </div> <div> <div class=“u-direction-row”> <div

    class=“u-flex-none”> <div class=“u-direction-row”> <div class=“u-flex-none”> Us </div> <div>You</div> </div> </div> <div>Them</div> </div> </div> </div>
  6. <div class=“u-direction-row”> <div class=“u-flex-none”> <div class=“u-direction-row”> <div class=“u-flex-none”> Me </div>

    <div> <div class=“u-direction-row”> <div class=“u-flex-none”> <div class=“u-direction-row”> <div class=“u-flex-none”> Me </div> <div>You</div> </div> </div> <div>You</div> </div> </div> </div> </div> <div> <div class=“u-direction-row”> <div class=“u-flex-none”> <div class=“u-direction-row”> <div class=“u-flex-none”> Me </div> <div class=“scrolling-component”>You</div> </div> </div> <div>You</div> </div> </div> </div>