bugl
bugl
HomeLearnPatternsPathsSearch
HomeLearnPatternsPathsSearch

Loading lesson path

Learn/CSS/Modern Layout
CSS•Modern Layout

CSS Flex Items

Flash cards

Review the key moves

1/4
Core idea

What is the main idea behind CSS Flex Items?

Lesson checks

Practice each idea before moving on

Short Mimo-style checks built from this lesson's code, terms, and sequence.

1Quick choice

Which statement best captures the main point of this lesson?

2Order

Put the learning moves in the order that makes the concept easiest to apply.

CSS flex-shrink Property
CSS flex-grow Property
CSS order Property

The direct child elements of a flex container automatically becomes flex items.

Flex items can have the following properties:

  • order - Specifies the display order of the flex items inside the flex container
  • flex-grow - Specifies how much a flex item will grow relative to the rest of the flex items
  • flex-shrink - Specifies how much a flex item will shrink relative to the rest of the flex items
  • flex-basis - Specifies the initial length of a flex item
  • flex - Shorthand property for flex-grow , flex-shrink , and flex-basis
  • align-self - Specifies the alignment for the flex item inside the flex container

CSS order Property

The order property specifies the display order of the flex items inside the flex container.

The first flex item in the source code does not have to appear as the first item in the layout.

The order value must be a number, and the default value is 0.

order

CSS flex-grow Property

The flex-grow property specifies how much a flex item will grow relative to the rest of the flex items.

The value must be a number, and the default value is 0.

<div class="flex-container"> <div style="flex-grow: 1">1</div>
<div style="flex-grow: 1">2</div> <div style="flex-grow: 4">3</div> </div>

CSS flex-shrink Property

The flex-shrink property specifies how much a flex item will shrink relative to the rest of the flex items.

The value must be a number, and the default value is 1.

<div class="flex-container"> <div>1</div> <div>2</div> <div style="flex-shrink: 2">3</div>
<div>4</div> <div>5</div> <div>6</div> </div>

CSS flex-basis Property

The flex-basis property specifies the initial length of a flex item.

<div class="flex-container"> <div>1</div> <div>2</div> <div style="flex-basis: 250px">3</div>
<div>4</div> </div>

CSS flex Property

The flex property is a shorthand property for the flex-grow , flex-shrink , and flex-basis properties.

<div class="flex-container"> <div>1</div> <div>2</div> <div style="flex: 1 0 150px">3</div>
<div>4</div> </div>

CSS align-self Property

The align-self property specifies the alignment for the selected item inside the flexible container.

This property overrides the default alignment set by the container's align-items property.

In these examples we use a 200 pixels high container, to better demonstrate the align-self property:

<div class="flex-container"> <div>1</div> <div>2</div> <div style="align-self: center">3</div>
<div>4</div> </div>
<div class="flex-container"> <div>1</div> <div style="align-self: flex-start">2</div>
<div style="align-self: flex-end">3</div>
<div>4</div> </div>

The CSS Flex Items Properties

The following table lists all the CSS Flex Items properties:

PropertyDescription
align-selfSpecifies the alignment for a flex item (overrides the flex container's align-items property)
flexA shorthand property for the flex-grow, flex-shrink, and the flex-basis properties
flex-basisSpecifies the initial length of a flex item
flex-growSpecifies how much a flex item will grow relative to the rest of the flex items inside the container
flex-shrinkSpecifies how much a flex item will shrink relative to the rest of the flex items inside the container
orderSpecifies the order of the flex items inside the container

Previous

Responsive Web Design - Media Queries

Next

CSS Grid Container - Align Grid Content