Modern CSS Grid Layout with Auto-placement
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.