- Eski CSS hack tekniklerini ve bunların yerini alan modern yerel CSS sözdizimini yan yana karşılaştıran bir kod derlemesi
- Grid, Flexbox, OKLCH renkleri, container query, scroll-timeline gibi güncel standartlardan yararlanarak JavaScript bağımlılığını azaltıyor
- Renk, yerleşim, animasyon, seçiciler, tipografi, iş akışı gibi başlıklara ayrılarak her özellik için modern alternatifler sunuyor
- Güncel CSS standartlarıyla JS, Sass ve harici kütüphane bağımlılığını azaltmak ve tarayıcının yerel özelliklerini mümkün olduğunca kullanmak mümkün
1 yorum
Hacker News yorumları
2025'in CSS'i denince, sanki 2005'teki gibi inline stilleri doğrudan HTML'e yazalım deniyormuş gibi geliyor
Tailwind'den bahsediyorum ama sonuçta biçim ile sunumun ayrımını görmezden gelmiş oluyor
HTML gerçekten yalnızca içerikten, CSS de yalnızca stilden sorumlu olsaydı,
.container-wrapper .container .container-innergibi bir div çorbası oluşturmaya gerek kalmazdıDüzeni her değiştirdiğimizde HTML'i de değiştirmek zorunda olmamız bunun kanıtı
Bileşenle ilgili kodun tek yerde toplanması sayesinde dosyalar arasında gidip gelmek gerekmiyor
Düzen ve stil, ayrıştırılamayan UI parçalarıdır
HTML içerik değil, düzendir
Concern separation'a inansanız bile HTML ile CSS aynı sunum katmanına aittir
Bunların ayrılabileceğine inanmak, gerçeği görmezden gelmek gibi
Son dönemde CSS'teki başlıca iyileştirmelerin bir listesini çıkardım
:has(...):is(...)— eskiden:not(:not(...))gibi hilelere başvurmak gerekiyordu:where(...)—:is(...)'e benzer ama selector specificity'si 0 olduğu için karmaşık seçicilerde kullanışlıdırLLM'lerin çoğu bu özelliği bilmiyor
AGENTS.mdiçine örnek eklemenizi tavsiye ederimMDN Nesting Selector belgesine bakmak faydalı olur
&seçicisiyle aynı anda okunabilirlik ve tekrarın azaltılması sağlanabilirtext-box: trim20 yıldır tasarımcılara büyük harflerin üst hizasını tutturmanın imkânsız olduğunu açıklamak zorunda kaldığım dönem bittiği için kendimi özgür hissediyorum
@layerözelliğini seviyorumÖrneklerin bazıları eski yöntemle tüm tarayıcılarda çalışırken, yeni yöntem yalnızca Chrome/Edge'de çalışıyor
Böyle örnekler koymak Blink tekelini güçlendirdiği için bana sorumsuzca geliyor
Asıl Mozilla'nın standartlara uyumdaki eksikliği eleştirilmeli
Öğeleri ekranın kenarlarına sabitlemeyi bırakmak lazım
Bazı sitelerde ekranın yarısından fazlasını statik öğeler kaplıyor
İçeriğin kaymasına izin vermek daha doğal
İronik biçimde, ilgili site karanlık moda sabitlenmiş ve
prefers-color-schemekullanmıyor“Ne güzel yaratıcı CSS örnekleri var!” diye bakıyorsun, sonra tarayıcı desteğinin %40~50 seviyesinde olduğunu görüp pratik kısıtlarla karşılaşıyorsun
Chromium'un aşırı etkisi sayesinde olmuş olsa da sonuçta olumlu
Interop 2025'e bakın
Tarayıcı üreticileri bir gün geniş çaplı destek sağlamak için özellikleri şimdiden ekliyor
Firefox'ta çalışmadığı söylenen örnekler gerçek demoda düzgün çalıştığı için kafa karıştırıyor
Acaba polyfill uygulanmış mı diye merak ediyorum
Sol alttaki yeşil yüzde, o özelliği destekleyen tarayıcı kullanıcılarının oranını gösteriyor
Çoğu zaman bu oran yarının altında kalıyor
Sonuçta bu “modern CSS”ten çok “en yeni Chrome CSS'i” gibi
Örneğin
sibling-index()Firefox'ta hâlâ çalışmıyor ama “widely available” olarak işaretlenmişBugünlerde Tailwind, CSS-in-JS, Sass/SCSS ve Vanilla CSS arasında hangisini kullanmak gerektiği konusunda kafam karışıyor
Ekibinize uyanı kullanın
Tailwind uygunsa onu, kişisel projeyse inline CSS'yi, Sass'a alışkınsanız onu,
en yeni CSS'e tamamen yönelmek istiyorsanız o da harika bir seçim
O kadar uzun süredir web geliştiriyorum ki, “eski yöntem” denilen örneklerde bile ilk kez gördüğüm birçok özellik var
Renk parlaklığı ayarlama özelliğini ilk kez gördüm
Eskiden bunu Sass ve Compass ile yapıyordum ama toolchain bakımını sürdürmek zahmetliydi
Artık doğrudan CSS içinde desteklenmesi çok daha kullanışlı