Skip to content
0

Flex Classes ​

Pre-built Flexbox utility classes for controlling flex item sizing, growth, shrink behavior, and ordering.

Flex Shorthand ​

ClassProperties
.flex-1flex: 1 1 0%
.flex-autoflex: 1 1 auto
.flex-initialflex: 0 1 auto
.flex-noneflex: none

Grow & Shrink ​

ClassProperties
.growflex-grow: 1
.grow-0flex-grow: 0
.shrinkflex-shrink: 1
.shrink-0flex-shrink: 0

Order ​

Control the visual order of flex items.

ClassProperties
.order-firstorder: -9999
.order-lastorder: 9999
.order-noneorder: 0
.order-1order: 1
.order-2order: 2
.order-3order: 3
.order-4order: 4
.order-5order: 5
.order-6order: 6
.order-7order: 7
.order-8order: 8
.order-9order: 9
.order-10order: 10
.order-11order: 11
.order-12order: 12

Basic Usage ​

html
<!-- Equal-width columns -->
<div class="flex gap-4">
  <div class="flex-1 bg-info-100 p-4">Equal</div>
  <div class="flex-1 bg-info-100 p-4">Equal</div>
  <div class="flex-1 bg-info-100 p-4">Equal</div>
</div>

<!-- One fixed, one flexible -->
<div class="flex gap-4">
  <div class="w-48 bg-purple-100 p-4">Fixed</div>
  <div class="flex-1 bg-purple-100 p-4">Fills remaining space</div>
</div>

<!-- Prevent shrinking -->
<div class="flex gap-4">
  <div class="shrink-0 w-64 bg-warning-100 p-4">Won't shrink</div>
  <div class="flex-1 bg-warning-100 p-4">Flexible</div>
</div>

<!-- Reorder items visually -->
<div class="flex gap-4">
  <div class="order-last bg-danger-100 p-4">Appears last</div>
  <div class="bg-danger-100 p-4">Appears first</div>
</div>

Flex Shorthand Comparison ​

ClassgrowshrinkbasisBehavior
.flex-1110%All items equal width
.flex-auto11autoGrows/shrinks based on content
.flex-initial01autoOnly shrinks, doesn't grow
.flex-none00autoFixed size, no grow/shrink

SCSS Source ​

scss
// From _utilities.scss — generate-grid-flex-classes()
.flex-1 { flex: 1 1 0%; }
.flex-auto { flex: 1 1 auto; }
.flex-initial { flex: 0 1 auto; }
.flex-none { flex: none; }

.grow { flex-grow: 1; }
.grow-0 { flex-grow: 0; }
.shrink { flex-shrink: 1; }
.shrink-0 { flex-shrink: 0; }

.order-first { order: -9999; }
.order-last { order: 9999; }
.order-none { order: 0; }
@for $i from 1 through 12 {
  .order-#{$i} { order: $i; }
}

TIP

For flex container utilities (direction, wrap, alignment), see the Flex Mixins documentation.

Released under the MIT License.