Listado completo de tutoriales

70 - Flexbox - (flex aplicada a los items)


La propiedad flex es el formato resumido de las propiedades "flex-grow", "flex-shrink" y "flex-basis".

El orden de valores en caso que indiquemos los tres debe ser:

  flex: valor del flex-grow  valor del flex-shrink  valor del flex-basis;

Ejemplos:

  flex: 1 0 60%;

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:

flex: 1 2;   /* flex-basis queda con su valor por defecto */
flex: 1 20%; /* flex-shrink queda con su valor por defecto */
flex: none;  /* se almacenan los valores 0 0 auto*/
flex: auto; /* Especificamos los valores por defecto de cada propiedad */

Problema: Definir un Flexbox con tres items. Inicializar la propiedad flex de cada item.

pagina1.html

<!DOCTYPE html>
<html>
<head>
  <title>Problema</title>
  <meta charset="UTF-8">
  <link rel="StyleSheet" href="estilos.css" type="text/css">
</head>
<body>
  <div id="contenedor1">
    <div id="item1">Caja 1</div>
    <div id="item2">Caja 2</div>
    <div id="item3">Caja 3</div>
  </div>
</body>
</html>

estilos.css

#contenedor1{
  display: flex;
  background-color: #000;  
  height: 300px;
  color:white;
  font-size:2rem;
}

#item1 {  
  flex: 1 1 20%;
  background-color: #0078A6;
}
#item2 {
  flex: 0 0 60%;  
  background-color: #0084B6;
}
#item3 {
  flex: 0 1 20%;  
  background-color: #008CC1;
}

Retornar