Menu
Coddy logo textTech

Diseño de cuadrícula de tarjetas

Parte de la sección Frontend Práctico del Journey de HTML de Coddy. Lección 27 de 35.

Una cuadrícula de tarjetas es un patrón adaptable común utilizado en sitios de comercio electrónico, portafolios o blogs. Organiza elementos (como productos, artículos o perfiles) en tarjetas espaciadas uniformemente. Cada tarjeta normalmente contiene una imagen, un título, algo de texto y, a veces, un botón o enlace.

Este diseño suele construirse con CSS Grid o Flexbox para que el número de tarjetas por fila cambie según el tamaño de la pantalla (p. ej., 1 columna en móviles, 2-3 en tabletas, 4 o más en ordenadores).

Primero, crea tu estructura HTML para un listado de productos:

<div class="product-grid">
  <div class="product-card">
    <img src="product1.jpg" alt="Product 1">
    <h3>Product Name</h3>
    <p>$19.99</p>
    <button>Add to Cart</button>
  </div>
  <!-- Más tarjetas de producto aquí -->
</div>

Ahora, añade CSS para hacerlo responsive:

.product-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}

/* For tablets and up */
@media (min-width: 600px) {
  .product-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* For desktops */
@media (min-width: 900px) {
  .product-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.product-card {
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 1rem;
}

Esto crea una sola columna en dispositivos móviles, dos columnas en tabletas y tres columnas en pantallas de escritorio.

challenge icon

Desafío

Fácil

Se te proporciona una página HTML para una galería de fotos de viajes. Tu tarea es crear una cuadrícula de tarjetas adaptable que se ajuste a diferentes tamaños de pantalla.

Requisitos:

  • Usa CSS Grid para el diseño.
  • En dispositivos móviles (pantallas pequeñas), muestra 1 tarjeta por fila.
  • En tabletas, muestra 2 tarjetas por fila.
  • En computadoras de escritorio, muestra 3 o más tarjetas por fila.

Aplica a cada tarjeta:

  • Un color de fondo atractivo
  • Esquinas redondeadas

Objetivo: Crea un diseño de galería limpio y moderno que se vea genial en cualquier tamaño de pantalla.

Pruébalo tú mismo

<!DOCTYPE html>
<html>
<head>
  <title>Card Grid Layout</title>
  <style>
    body {
      font-family: Arial, sans-serif;
      background: #f9f9f9;
      margin: 0;
      padding: 2rem;
    }

    h1 {
      text-align: center;
      margin-bottom: 2rem;
      color: #333;
    }

    .gallery-grid {
      gap: 1.5rem;
    }

    .card {
      box-shadow: 0 4px 10px rgba(0,0,0,0.1);
      overflow: hidden;
      transition: transform 0.3s ease;
    }

    .card:hover {
      transform: scale(1.03);
    }

    .card img {
      width: 100%;
      height: 200px;
      object-fit: cover;
    }

    .card h3 {
      margin: 0.8rem;
      color: #444;
    }

    .card p {
      margin: 0 0.8rem 1rem;
      font-size: 0.9rem;
      color: #666;
    }

    /* Tablet: 2 columns */
    @media (min-width: 600px) {
      .gallery-grid {
          
      }
    }

    /* Desktop: 3 columns */
    @media (min-width: 900px) {
      .gallery-grid {

      }
    }
  </style>
</head>
<body>
    <h1>Travel Gallery</h1>

    <div class="gallery-grid">
        <div class="card">
          <img src="https://images.unsplash.com/photo-1507525428034-b723cf961d3e" alt="Beach">
          <h3>Sunny Beach</h3>
          <p>Relaxing views of golden sand and turquoise waters.</p>
        </div>
    
        <div class="card">
          <img src="https://images.unsplash.com/photo-1469474968028-56623f02e42e" alt="Mountains">
          <h3>Mountain Escape</h3>
          <p>Fresh air and breathtaking peaks for hiking lovers.</p>
        </div>
    
        <div class="card">
          <img src="https://upload.wikimedia.org/wikipedia/commons/0/05/View_of_Empire_State_Building_from_Rockefeller_Center_New_York_City_dllu.jpg" alt="City Lights">
          <h3>City Lights</h3>
          <p>A bustling city skyline shining bright at night.</p>
        </div>
    
        <div class="card">
          <img src="https://upload.wikimedia.org/wikipedia/commons/b/be/Hutan_Tangkahan.jpg" alt="Forest">
          <h3>Green Forest</h3>
          <p>Peaceful trails and endless shades of green.</p>
        </div>
    
        <div class="card">
          <img src="https://upload.wikimedia.org/wikipedia/commons/c/c6/Caravan_in_the_desert.jpg" alt="Desert">
          <h3>Desert Adventure</h3>
          <p>Golden dunes stretching far into the horizon.</p>
        </div>
    
        <div class="card">
          <img src="https://images.unsplash.com/photo-1501785888041-af3ef285b470" alt="Lake">
          <h3>Crystal Lake</h3>
          <p>Mirror-like reflections surrounded by mountains.</p>
        </div>
    </div>
</body>
</html>
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Frontend Práctico

Practica por tu cuenta: Playground de Web