CSS flex Property

CSS

flex

Property

Example

Let all the flexible items be the same length, regardless of its content:

#main div {
  -ms-flex: 1; /* IE 10 */
  flex: 1;
}

Try it Yourself »

Tip: More “Try it Yourself” examples below.

Definition and Usage

The flex property is a shorthand property for:

The flex property sets the flexible length on flexible items.

Note: If the element is not a flexible item, the flex property has no effect.

Show demo ❯

Default value:
0 1 auto

Inherited:
no

Animatable:
yes, see individual properties. Read about animatable

Version:
CSS3

JavaScript syntax:
object.style.flex=”1″
Try it

Browser Support

The numbers in the table specify the first browser version that fully supports the property.

Numbers followed by -webkit-, -ms- or -moz- specify the first version that worked with a prefix.

Property

flex
29.0
21.0 -webkit-
11.0
10.0 -ms-
28.0
18.0 -moz-
9.0
6.1 -webkit-
17.0

CSS Syntax

flex: flex-grow flex-shrink flex-basis|auto|initial|inherit;

Property Values

Value
Description
Demo

flex-grow
A number specifying how much the item will grow relative to the rest of the flexible items
Demo ❯
flex-shrink
A number specifying how much the item will shrink relative to the rest of the flexible items

flex-basis
The length of the item. Legal values: “auto”, “inherit”, or a number followed by “%”, “px”, “em” or any other length unit
Demo ❯

auto
Same as 1 1 auto.

initial
Same as 0 1 auto. Read about initial

none
Same as 0 0 auto.

inherit
Inherits this property from its parent element. Read about inherit

More Examples

Example

Using flex together with media queries to create a different layout for different screen sizes/devices:

.flex-container {
  display: flex;
  flex-wrap: wrap;
}

.flex-item-left {
  flex: 50%;
}

.flex-item-right {
 
flex: 50%;
}

/* Responsive layout – makes a one column layout (100%) instead of a two-column
layout (50%) */
@media (max-width: 800px) {
  .flex-item-right,
.flex-item-left {
    flex: 100%;
  }
}

Try it Yourself »

Related Pages

CSS Tutorial: CSS Flexible Box

CSS Reference: flex-basis property

CSS Reference: flex-direction property

CSS Reference: flex-flow property

CSS Reference: flex-grow property

CSS Reference: flex-shrink property

CSS Reference: flex-wrap property

HTML DOM reference: flex property