Inicio > Cursos > HTML & CSS > CSS Grid - Layout 2D
HTML & CSSFundamentos de CSSLección 13 de 24

CSS Grid - Layout 2D

CSS Grid es bidimensional: controla filas Y columnas al mismo tiempo. Es perfecto para layouts complejos de página completa. Con grid-template-columns defines cuántas columnas y su tamaño, grid-template-rows las filas. La unidad fr (fracción) distribuye el espacio disponible proporcionalmente.

La función repeat() evita repetir definiciones: repeat(3, 1fr) crea 3 columnas iguales. grid-column y grid-row permiten que un elemento ocupe múltiples celdas. grid-template-areas permite nombrar zonas del grid y asignar elementos a ellas por nombre, haciendo el layout extremadamente legible.

/* GRID CONTAINER */
.layout {
  display: grid;
  
  /* Definir columnas */
  grid-template-columns: 200px 1fr 1fr; /* 3 cols */
  grid-template-columns: repeat(3, 1fr); /* 3 iguales */
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  
  /* Definir filas */
  grid-template-rows: 80px 1fr 60px;
  
  /* Espacio entre celdas */
  gap: 20px;
  column-gap: 20px;
  row-gap: 10px;
}

/* POSICIONAR ELEMENTOS EN EL GRID */
.header {
  grid-column: 1 / -1;  /* ocupa todas las columnas */
}

.sidebar {
  grid-column: 1 / 2;   /* columna 1 */
  grid-row: 2 / 3;      /* fila 2 */
}

.main {
  grid-column: 2 / -1;  /* columnas 2 hasta el final */
}

/* LAYOUT CLÁSICO CON ÁREAS */
.pagina {
  display: grid;
  grid-template-areas:
    "header header"
    "sidebar main"
    "footer footer";
  grid-template-columns: 250px 1fr;
}
Consejo📐 El valor fr significa "fracción del espacio disponible". repeat(3, 1fr) crea 3 columnas iguales. Es la unidad más poderosa de Grid.
← Flexbox - Layout ModernoPosicionamiento CSS →

Practica esta lección

Resuelve los ejercicios del curso de HTML & CSS en la app, gratis y con corrección automática.

Empezar a practicar