Modern CSS Grid Layout with Auto-placement

CSS Intermediate 👁️ 624 views By system Added Just now

Responsive grid layout with minmax, auto-fit, and named areas

0
CSS Code
/* Responsive Card Grid */
.card-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 1.5rem;
    padding: 1.5rem;
}

.card {
    background: white;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    transition: transform 0.2s;
}

.card:hover {
    transform: translateY(-4px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

/* Named Grid Areas Layout */
.dashboard {
    display: grid;
    grid-template-areas:
        "header header header"
        "sidebar main main"
        "sidebar widget1 widget2"
        "footer footer footer";
    grid-template-columns: 240px 1fr 1fr;
    min-height: 100vh;
    gap: 1rem;
    padding: 1rem;
}

.dashboard-header { grid-area: header; background: #2c3e50; color: white; }
.dashboard-sidebar { grid-area: sidebar; background: #34495e; color: white; }
.dashboard-main { grid-area: main; background: #ecf0f1; }
.dashboard-footer { grid-area: footer; background: #2c3e50; color: white; }

/* Responsive */
@media (max-width: 768px) {
    .dashboard {
        grid-template-areas:
            "header"
            "main"
            "widget1"
            "widget2"
            "sidebar"
            "footer";
        grid-template-columns: 1fr;
    }
    
    .card-grid {
        grid-template-columns: 1fr;
    }
}

Explanation

Modern CSS Grid provides powerful layout capabilities without frameworks. This snippet demonstrates responsive card grids with auto-fit/minmax, and named grid areas for semantic layouts. Grid excels at 2D layouts and is perfect for component-based design systems.