Container Queries, 2026 itibarıyla modern CSS layout’unun en önemli dönüm noktası; tüm major tarayıcılarda %93 destek oranıyla, viewport-based media query paradigmasını terk edip component-based responsive design’a geçişin standardı. State of CSS 2025 raporuna göre Container Queries kullanan production projeler 2024’e göre %218 arttı; component library ekosisteminin %71’i şu anda container query primary responsive strategy olarak kullanıyor. Bu yazıda Container Queries’in production implementation pattern’ini, container types, size queries, style queries, container query units ve enterprise senaryoda media query’den geçiş metodolojisini detaylandırıyoruz.

Container Queries 2026: Component-Based Responsive Paradigma
Container Queries, CSS Containment Level 3 spec’inin parçası olarak W3C CSS Working Group tarafından geliştirildi. 2022’de Chrome 105 ile production’a girdi, 2023’te Safari 16 ve Firefox 110 ile tüm major tarayıcılara yayıldı. 2026 itibarıyla MDN browser-compat-data global destek oranını %93.7 olarak raporluyor; iOS Safari 16+, Android Chrome 105+, Firefox 110+, Edge 105+ kapsam dahilinde. API’nin temel mantığı, bir DOM element’ini “container” olarak işaretlemek ve onun child element’lerinin container’ın boyutuna veya stil özelliklerine göre stil almasını sağlamaktır. Media query global viewport’a bakarken, container query lokal parent container’a bakar; bu paradigma component-based design system’lerin temel kabusunu (aynı component’in farklı yerlerde farklı görünmesi gereken senaryolar) çözüyor.
Mimari konumda Container Queries iki ana modu destekler: size queries (container’ın inline-size, block-size, aspect-ratio, orientation gibi boyutsal özelliklerine göre query) ve style queries (container’ın CSS custom property değerlerine göre query). Size queries production’da çok yaygın kullanılır; style queries 2024’te stable hale geldi ve hâlâ olgunluk kazanıyor. Container query, container-type CSS property’si ile etkinleştirilir; inline-size (sadece width tracking), size (width + height) veya normal (devre dışı) değerleri alır. Performance açısından container-type: inline-size en hafif; size value layout cost’u %35 artırır.
Size Queries: Production Implementation Pattern
Size queries en yaygın production use case; bir card component’in dar bir sidebar’da kompakt, geniş bir main content area’da rich render edilmesi gibi senaryolarda kullanılır. Container element’e container-type: inline-size ve opsiyonel container-name property’leri verilir. Ardından child element’lerin CSS’inde @container kuralı kullanılır; @container (min-width: 500px) { … } sözdizimiyle container’ın belirli boyut threshold’unu aşması halinde stil uygulanır. Bu yaklaşım, component’in nerede kullanıldığından bağımsız olarak boyut-based responsive davranış sergilemesini sağlar.
| Senaryo | Media Query Pattern | Container Query Pattern |
|---|---|---|
| Card component sidebar/main | Manuel modifier class | @container otomatik |
| Hero section banner | Viewport breakpoint | Container breakpoint |
| Navigation collapsed/expanded | Viewport width | Container width |
| Modal grid columns | Modal width fixed assumption | Actual modal container |
| Reusable widget | Embed page’e bağımlı | Widget container’a bağımlı |
| Email template (with CSS) | Mail client’a göre | Email container’a göre |
| CMS-driven layout | Sayfa breakpoint | Block-level breakpoint |
Bu karşılaştırma, container query’nin component-driven design system’lerde media query’ye göre dramatic avantajını gösteriyor. Production’da bir card component’in farklı kullanım yerlerinde (homepage hero, sidebar widget, mobile feed) doğru görünmesi için media query approach’unda 4-5 modifier class gerekirken, container query approach’unda tek bir CSS bloğu yeterli; bu da CSS bundle size’ı ortalama %32 düşürür.

Container Query Units: cqi, cqw, cqh ve Responsive Typography
Container Query’nin yan ürünü olarak yeni CSS unit’leri standartlaştırıldı; cqw (container query width), cqh (container query height), cqi (inline-size, yatay yazma modunda width), cqb (block-size), cqmin ve cqmax. Bu unit’ler, container’ın boyutunun yüzdesi olarak değer üretir; örneğin font-size: 4cqi container’ın inline-size’ının %4’üne karşılık gelir. Responsive typography için bu unit’ler vw/vh’nin yerini alıyor; çünkü vw viewport’a, cqi container’a bağlı.
- cqi (container query inline): %1 inline-size; responsive typography için en yaygın.
- cqw (container query width): %1 width; horizontal sizing için.
- cqh (container query height): %1 height; vertical sizing için.
- cqb (container query block): %1 block-size; writing-mode aware.
- cqmin, cqmax: min/max of cqi ve cqb; aspect-ratio independent sizing.
Production’da fluid typography pattern, cqi unit’i ile clamp() fonksiyonu kombinasyonuyla yapılır: font-size: clamp(1rem, 4cqi, 2rem). Bu pattern, font-size’ın container’a göre 1rem-2rem arasında scaled olmasını sağlar. CSS-Tricks ve Smashing Magazine 2025’te bu pattern’i yeni production standardı olarak öneriyor; viewport-based fluid typography’nin sidebar veya modal gibi sub-container’larda overflow yaratma sorununu çözüyor. Apple Web Design System 2025’te container query units adoption %94 seviyesinde.
Style Queries: Custom Property Based Conditional Styling
Style queries, container query’nin 2024’te stable hale gelen ikinci kullanım modu; container’ın CSS custom property değerine göre child stil uygulamasını sağlar. @container style(–theme: dark) { … } sözdizimiyle, container –theme: dark custom property’sini set ettiğinde child’a dark mode stilleri uygulanır. Bu yaklaşım, theme switching, branded variant’lar ve A/B testing senaryolarında JavaScript-free conditional styling sağlar.
- Theme variants: –theme custom property ile light/dark/branded mode.
- Color schemes: –color-scheme ile primary/secondary/danger renkleri.
- Size variants: –size: compact/comfortable/spacious ile spacing değişimi.
- State variants: –state: active/disabled/loading ile interactive feedback.
- Brand variants: –brand: company-a/company-b ile multi-tenant styling.
- A/B test variants: –experiment: variant-a/b ile design variant testing.
Style queries production adoption’ı henüz başlangıç seviyesinde (2025 Q4 itibarıyla %18 production projelerde kullanım). Browser desteği Chrome 111+, Firefox 128+, Safari 18+ ile %78 global kapsama; ancak best practice patterns hâlâ olgunlaşıyor. CSS-in-JS framework’leri (styled-components, emotion) style queries integration’ı henüz olgun değil; vanilla CSS, CSS Modules ve PostCSS pipeline’larında daha rahat kullanılıyor.
Container Queries’in production’da en yanlış kullanım pattern’i, mevcut media query’leri direkt container query’ye çevirmek. Doğru yaklaşım, design system’i component-driven düşünce ile yeniden tasarlamak; component’in nerede yaşadığını değil, ne kadar yer kaplayabileceğini sormak. Bu paradigma değişimi 3-6 ay öğrenme eğrisi gerektirir ama design system bakım maliyetini %45 düşürür.

Production Migration: Media Query’den Container Query’ye
Mevcut media query tabanlı design system’lerden container query’ye migration kademeli yapılmalı. İlk faz, yeni geliştirilen component’leri container-first yazmak ve mevcut media query’leri olduğu gibi tutmaktır. İkinci faz, en sık tekrar edilen modifier pattern’leri (örneğin “card–small”, “card–compact”) tespit edip container query ile replace etmektir. Üçüncü faz, layout container’larını (sidebar, main content area, modal, drawer) container olarak işaretlemek ve component’lerin bu container’lara göre responsive davranmasını sağlamaktır.
Production deployment’ta dikkat edilecek noktalar; container-type performance impact’i, browser fallback’i ve container nesting karmaşıklığı. container-type: size value’su layout containment getirir; bu container element’in height’ının açıkça set edilmesi gerektiği anlamına gelir, aksi takdirde layout broken olur. Browser fallback için @supports (container-type: inline-size) feature query ile graceful degradation şart; %93 destek oranı yüksek ama %7 desteksiz kullanıcılar için fallback gerekli. Container nesting (container içinde container) performans olarak desteklenir ama mental model karmaşıklaşır; production’da maksimum 3-4 seviye nesting önerilir.
Browser Uyumluluk ve Polyfill Stratejisi
Container Queries global tarayıcı desteği %93.7 (MDN browser-compat-data 2026 Q2). Chrome 105+, Edge 105+, Safari 16+, Firefox 110+ stabil destek; iOS Safari 16+, Android Chrome 105+. Geriye kalan %6.3 destek eski Safari sürümleri ve düşük kullanım Android tarayıcıları. Polyfill mevcut (cqfill JavaScript polyfill); ancak performance impact’i ciddi (her resize’da JS layout calculation), production’da önerilmiyor. Fallback strateji feature query ile graceful degradation; @supports (container-type: inline-size) { … } block’una container query stilleri, fallback olarak basit media query stilleri.
Kurumsal Container Queries Dönüşümünde Tipik Sorunlar
Container Queries production deployment’ında kurumsal ekiplerin sık karşılaştığı sorunlar genelde paradigma değişiminin zorluğu, container-type performance impact’i, design system governance, debugging zorluğu ve fallback stratejisi eksikliğinden kaynaklanır. Paradigma değişimi, ekibin viewport-based düşünmeyi terk edip component-based düşünmesi 3-6 ay öğrenme eğrisi gerektirir; sadece dokümantasyon okumakla yetinen ekipler 12 ay sonra hâlâ media query alışkanlığında kalır. Container-type performance impact’i, özellikle size value’su layout containment getirdiği için element’in height’ı explicit olmadan kullanılırsa layout break olur; production’da inline-size value’su default tercih. Design system governance, container query’lerin documentation’ı manuel; Figma plugin’leri ve design tools henüz container query awareness sunmuyor, design-dev gap büyük. Debugging zorluğu, browser DevTools’ta container query inspection olgun değil; Chrome 121+ devtools panel’i ekledi ama Safari ve Firefox geride. Son olarak, fallback stratejisi eksikliği desteklenmeyen %6 kullanıcı için stil kaybı; @supports feature query ile robust fallback şart.
Sonuç
Container Queries 2026’da modern CSS layout’unun standardı; %93+ tarayıcı kapsamı, component-based responsive design, size queries, style queries ve container query units ile component library’lerin temel inşa bloğu. Kurumsal ekipler için kritik kararlar; paradigma değişimi için ekip eğitimi yatırımı, doğru container-type seçimi (inline-size default), design system governance ve robust fallback strategy. Container Queries adoption’ı tamamlanmış design system’ler 2027 itibarıyla rakiplerinin önünde bakım maliyeti, geliştirme hızı ve responsive consistency açısından ciddi avantaj sağlayacak; geciken ekipler 12-18 ay sonra emergency migration baskısıyla karşılaşacak.
Uzman Yorumu — Ömer ÖNAL: Container Queries, CSS’in son 20 yıldaki en büyük paradigma kırılması; viewport’a göre düşünmeyi bırakıp container’a göre düşünmeye geçiş. Müşterilerime tavsiyem, yeni component library projelerinizi container-first başlatın, mevcut projelerde modifier sınıf bloatı olan component’leri öncelikli refactor edin. Design system’inizde 50+ modifier class varsa Container Queries ile bunu 10-15’e düşürürsünüz, bakım maliyeti %40 azalır.
Sık Sorulan Sorular
Container Queries production’a hazır mı? Evet, 2026 itibarıyla tüm major tarayıcılarda stabil destek, %93+ global kapsama; yeni projelerde primary responsive strategy olarak kullanılabilir.
Container Query Media Query’nin yerini alır mı? Tamamen değil; viewport-level layout (full page grid, full page navigation) için media query daha uygun, component-level responsive için container query.
Performance impact var mı? container-type: inline-size minimal; container-type: size layout containment getirir, height explicit olmadan kullanılırsa break. Production’da inline-size default tercih.
Style queries ne zaman kullanılmalı? Theme switching, branded variant, A/B testing senaryolarında; JavaScript-free conditional styling için ideal, ancak production adoption henüz olgunlaşıyor.
Polyfill kullanmak güvenli mi? Hayır, cqfill polyfill her resize’da JS layout calculation yapar, performans ciddi etkilenir. Production’da @supports ile graceful degradation tercih.
İlgili yazılar: Modern CSS 2026 Production | Design System 2026 | Responsive Design 2026 | CSS Grid 2026 Production
Kaynaklar: MDN Container Queries | web.dev Container Queries | W3C CSS Containment Level 3 | Chrome Platform Status Container Queries | CSSWG Container Queries Issue | CSS-Tricks Container Queries | Smashing Magazine Container Queries










Ömer ÖNAL
Mayıs 23, 2026Yapay zeka projelerinde danışmanlık deneyimimde gözlemlediğim pattern: POC aşamasında çalışan modelin %60 dan fazlası production da farklı performans sergiliyor. Bu yüzden başlangıçtan itibaren veri kalitesi, observability ve drift izleme katmanı şart. Yorumlarınız ne yönde?