Montañas del Norte
Paisaje montañoso con vistas espectaculares
@supports permite detectar si un navegador soporta una característica CSS antes de aplicar estilos. Es progressive enhancement puro: ofreces la mejor experiencia posible según las capacidades del navegador, con fallbacks elegantes para todos.
Sistema de layout bidimensional para crear interfaces complejas
Efectos de blur y filtros en elementos detrás (glassmorphism)
Mezclar colores directamente en CSS sin preprocesadores
Responsive design basado en el contenedor padre
Seleccionar elementos padre basándose en sus hijos
Grids anidados que heredan las columnas del padre
Esta galería se adapta automáticamente: Si tu navegador soporta características modernas (Grid, backdrop-filter, color-mix), verás el diseño avanzado. Si no, verás un fallback elegante usando Flexbox y técnicas tradicionales.
Paisaje montañoso con vistas espectaculares
Luces urbanas en la noche moderna
Olas cristalinas y arena blanca
Composición abstracta moderna
Naturaleza salvaje y enigmática
Rascacielos y diseño vanguardista
/* Fallback por defecto (flexbox) */
.progressive-gallery {
display: flex;
flex-wrap: wrap;
gap: 1rem;
}
/* Si el navegador SOPORTA Grid */
@supports (display: grid) {
.progressive-gallery {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
gap: 2rem;
}
}
/* Overlay normal (fallback) */
.gallery-overlay {
background: rgba(0, 0, 0, 0.7);
}
/* Si SOPORTA backdrop-filter */
@supports (backdrop-filter: blur(10px)) {
.gallery-overlay {
background: rgba(0, 0, 0, 0.3);
backdrop-filter: blur(10px) saturate(180%);
}
}
/* Color estático (fallback) */
.meta-tag {
background: #2448A6;
}
/* Si SOPORTA color-mix */
@supports (background: color-mix(in srgb, red, blue)) {
.meta-tag:hover {
background: color-mix(in srgb, var(--primary-color) 70%, var(--secondary-color) 30%);
}
}
/* Si SOPORTA Grid Y Backdrop Filter */
@supports (display: grid) and (backdrop-filter: blur(10px)) {
.progressive-gallery {
/* Layout moderno completo */
display: grid;
grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
}
.gallery-overlay {
backdrop-filter: blur(10px);
}
}
/* Si NO SOPORTA Grid */
@supports not (display: grid) {
.progressive-gallery {
display: flex;
flex-wrap: wrap;
}
}
/* Si SOPORTA el selector :has() */
@supports selector(:has(*)) {
.gallery-item:has(.gallery-overlay:hover) {
transform: scale(1.05);
box-shadow: 0 20px 40px rgba(0,0,0,0.2);
}
}
/* Si NO SOPORTA :has() */
@supports not selector(:has(*)) {
.gallery-overlay:hover + .gallery-content {
/* Fallback sin :has() */
}
}
Usa lo último de CSS con confianza. Container Queries, :has(), color-mix() con fallbacks automáticos.
Glassmorphism, filtros avanzados, blend modes. Si no se soporta, alternativas elegantes.
Grid avanzado, subgrid, aspect-ratio. Flexbox como fallback para navegadores antiguos.
Todos obtienen una experiencia funcional. Los navegadores modernos obtienen la mejor versión.
📊 Soporte global: 97%+ de navegadores. Puedes usar @supports con confianza. Para el 3% restante, simplemente no se aplicarán las reglas dentro del @supports.