La propiedad flex establece la longitud flexible en elementos flexibles.
La propiedad flex es una propiedad abreviada para:
Nota: Si el elemento no es un elemento flexible, la flexpropiedad no tiene ningún efecto.
En este ejemplo, cambiamos el porcentaje de flexión para crear diferentes diseños para diferentes tamaños de pantalla.
.flex-container {
  display: flex;
  flex-wrap: wrap;
  font-size: 30px;
  text-align: center;
}
.flex-item-left {
  background-color: gold;
  padding: 10px;
  flex: 50%;
}
.flex-item-right {
  background-color: orange;
  padding: 10px;
  flex: 50%;
}
/* Responsive layout - makes a one column-layout instead of a two-column layout */
@media (max-width: 800px) {
  .flex-item-right, .flex-item-left {
    flex: 100%;
  }
}
</style>
</head>
<body>
<h1>Flexbox Responsive </h1>
<p>En este ejemplo, cambiamos el porcentaje de flexión para crear diferentes diseños para diferentes tamaños de pantalla.</p>
<p><b>Cambie el tamaño de la ventana del navegador para ver que la dirección cambia cuando el tamaño de la pantalla es de 800 px o menos.</b></p>
<div class="flex-container">
  <div class="flex-item-left">1</div>
  <div class="flex-item-right">2</div>
</div>
</body>
</html>
Estamos cargando un 1 en la propiedad flex-grow, un 0 en la propiedad flex-shrink y un 60% en flex-basis.
Probar distintos valores y ver como responden las cajas flexibles:
Hay posibilidades de inicializar la propiedad flex con menos de tres valores y que los otros queden con valores por defecto: