- Apple, iOS 26'da kullanılabilen özel CSS özelliği
-apple-visual-effectekledi - Bu özellik, Liquid Glass ve standart blur materyalleri gibi yeni tasarım efektlerinin web içeriğine de uygulanmasını sağlıyor
- Ancak bu özellik Safari tarayıcısında veya WKWebView'da varsayılan olarak etkin değil
- WKWebView'da kullanmak için
useSystemAppearanceadlı özel ayarı açmak gerekiyor; ancak bunu değiştirmek App Store onayını zorlaştırıyor - Bu özellik büyük ölçüde Apple'ın kendi içinde kullandığı bir şey gibi görünüyor ve genel geliştiriciler şu an için bundan yararlanamıyor
Genel bakış
- Yazar, WebKit'in GitHub ChangeLog kayıtlarına hobi olarak sık sık göz atıp iOS'un bir sonraki güncellemelerini tahmin ediyor
- Kısa süre önce WWDC'nin hemen ardından WebKit'te “[Materials] Rename 'hosted blur' materials to reference 'glass'” başlıklı bir Pull Request fark etti
- 2025 WWDC'de öne çıkarılan Liquid Glass, iOS 7'den bu yana kullanıcı arayüzündeki (UI) en büyük değişiklik olarak görülüyor
- Bu tasarım değişikliği daha önce yalnızca native UI için geçerliyken, bu PR web view ile bağlantılı olabileceğine işaret ediyor
Apple'ın özel CSS özelliği
- PR, Apple'ın
-apple-visual-effectadlı özel bir CSS özelliği sunduğunu ortaya koyuyor - Bu özellikle iOS 26'da Liquid Glass efektlerinin (ör.
-apple-system-glass-material) uygulanabildiği görülüyor - Ayrıca tüm sürümlerde standart blur materyallerinin (
-apple-system-blur-material-thinvb.) kullanılabilmesi de mümkün - Resmî tasarım kılavuzu da bu tür materyallerden söz ediyor
Gerçek kullanım olasılığı
- Safari'de CSS'yi düzenleyip uygulamaya çalışsanız bile, web üzerinde çalışmıyor
- WKWebView tabanlı uygulamalarda da varsayılan olarak devre dışı
- Çalışması için
WKPreferencesiçindekiuseSystemAppearancedeğerinin true yapılması gerekiyor; ancak bu ayarın kendisi de özel olduğu için resmî yolla kullanılamıyor - Gayriresmî şekilde hack'lenip bu değer etkinleştirildikten sonra aşağıdaki gibi bir CSS ile efekt görülebiliyor
.toolbar { border-radius: 50%; -apple-visual-effect: -apple-system-glass-material; height: 75px; width: 450px; }
CSS örneği ve koşullu uygulama
-
Apple bu efekti bir CSS özelliği olarak tanımlayarak, destek durumuna göre çeşitli kuralların kolayca belirlenmesini sağlıyor
-
Örneğin
@supportssorgusu kullanılarak-apple-visual-effectyalnızca destekleyen cihazlarda uygulanabiliyor.toolbar { border-radius: 50%; height: 75px; width: 450px; background: rgba(204, 204, 204, 0.7); } @supports (-apple-visual-effect: -apple-system-glass-material) { background: transparent; -apple-visual-effect: -apple-system-glass-material }
Anlamı ve sınırlamaları
- Apple içi kullanım dışında genel geliştiricilerin kullanamayacağı bir özellik
- Yine de bu durum, "uygulama içi webview'ların neden sık sık kötü bir üne sahip olduğu" sorusuna dair bir ipucu veriyor
- Sorunsuz biçimde iyi entegre edilen webview'lar, kullanıcı tarafından fark edilmediği için problemler daha az görünür hale geliyor
- Apple'ın bunu geliştirmiş olması, bunu kendi servislerinde veya uygulamalarında gerçekten kullandığını dolaylı olarak düşündürüyor
- Günlük hayatta farkında olmadan webview tabanlı arayüzlerle karşılaşıyor olabilirsiniz
5 yorum
Böyle saçma bir şeyi görmezden gelmeli ve kimse kullanmamalı.
Apple Flash’i öldürürken çıkarlar örtüştüğü için alkışlamıştım,
şimdiki bu tercih ise mevcut ekosistemi görmezden gelen bir karar gibi hissedilmesi bakımından ironik.
IE’nin geri dönüşü mü?
IE’den sonra frontend geliştiriciler açısından IE pozisyonunda olan şey Chrome değil Safari oldu. Safari yüzünden frontend geliştiricileri pahalı Mac’ler almak zorunda kalıyor. Chrome ve Firefox’ta her şey çalışırken yalnızca Safari’de çalışmayan ya da garip görünen durumlar olabiliyor.
Hacker News görüşleri
reservedparametresi görüyoruz. İşletim sistemi geliştiricileri sık sık yalnızca dahili kullanım için özellikler yapar. Bu seferki sadece bir UI iyileştirmesi olduğu için illa özel tutulması gerekmiyor diye düşünüyorum ama muhtemelen Apple bunu sürekli sürdürmek istemediği için özel bıraktı-webkit-tap-highlight-colorözelliği de aynı şekilde eleştirilmeli mi merak ediyorum. Bu mantık, özel CSS özelliği oluşturma pratiğinin kendisinin yasaklanması gerektiğine çıkıyor; bana göre bu iddia abartılıper se) davranışlar listesine girmediği için buradarule of reasonuygulanacaktır. Bu durumda ancak davranışın doğrudan rekabete zarar verdiği, kayda değer olumlu etkisi olmadığı ve daha az kısıtlayıcı bir alternatif bulunmadığı gösterilirse kabul edilir. Bir CSS özelliğinin rekabete fiilen nasıl zarar verdiğini kanıtlamak zor ve isteyen biri “liquid glass” CSS’ini kendisi de yapabilir, kimse de bunu engellemiyor; o yüzden uygulanması zor görünüyorbackdrop-filterkullanmalarıyla aynı mantıkReduce Transparencyya daReduce Motiongibi erişilebilirlik ayarları bu animasyonlara uygulanmıyor. Aslında Apple’ın son dönemdeki birçok varsayılan uygulaması erişilebilirlik seçeneklerini ya unutuyor ya da eksik uyguluyor. ÖrneğinReduce Motionaçıkken albüme tıklama gibi bazı animasyonlar sadeleşiyor ama sola kaydırma ya da başka hareketlerde hâlâ aşırı animasyon var. Apple Podcasts ve iMessage da aynı durumda.Reduce Transparencybazı uygulamalarda şeffaflığı azaltmak yerine tüm arka planı siyah (#000000) yapıyor. iOS genelinde bunun gibi örnekler dolu. Çıkışa günler kalmış olmasına rağmen dropdown’lar ve devre dışı klavye düğmeleri gibi yerlerde erişilebilirlik seçenekleri hâlâ yansıtılmıyorWKPreferencesiçindeuseSystemAppearancediye bir ayarın açılması gerektiği söyleniyor ama bu özellik özel olduğu için App Store onayı alınamıyormuş. Doğru mu merak ediyorum. iOS geliştirme konusunda çok bilgili değilim ama çeşitli dahili API’ler kullanarak ana ekran widget’larını animasyonlu yapan uygulamaların decompile edildiği videolar izlediğimi hatırlıyorumSaçmalamayı bırakın da Safari uyumluluğunu düzgün koruyun.