Yayınlanma tarihi: 1 Mayıs 2025
Aksi belirtilmediği sürece aşağıdaki değişiklikler Android, ChromeOS, Linux, macOS ve Windows için en yeni Chrome beta kanalı sürümünde geçerlidir. Burada listelenen özellikler hakkında daha fazla bilgiyi sağlanan bağlantılardan veya ChromeStatus.com'daki listeden edinebilirsiniz. Chrome 130, 30 Nisan 2025 itibarıyla beta sürümündedir. Masaüstü için en son sürümü Google.com'dan, Android için ise Google Play Store'dan indirebilirsiniz.
CSS ve kullanıcı arayüzü
Bu sürümde yedi yeni CSS ve kullanıcı arayüzü özelliği ekleniyor.
if() işlevi
CSS if() işlevi, koşullu değerleri kısa ve öz bir şekilde ifade etmenizi sağlar. Noktalı virgülle ayrılmış bir dizi koşul-değer çiftini kabul eder. İşlev, her koşulu sırayla değerlendirir ve ilk doğru koşulla ilişkili değeri döndürür. Koşullardan hiçbiri doğru olarak değerlendirilmezse işlev boş bir jeton akışı döndürür. Bu sayede karmaşık koşullu mantığı basit ve kısa bir şekilde ifade edebilirsiniz. Örnek:
div {
color: var(--color);
background-color: if(style(--color: white): black; else: white);
}
.dark {
--color: black;
}
.light {
--color: white;
}
<div class="dark">dark</div>
<div class="light">light</div>
reading-flow ve reading-order özellikleri
reading-flow CSS özelliği, esnek, ızgara veya blok düzenindeki öğelerin erişilebilirlik araçlarına sunulma ve sekme klavyesiyle odaklanma sırasını kontrol eder. Aşağıdaki anahtar kelime değerlerinden birini alır:
normalflex-visualflex-flowgrid-rowsgrid-columnsgrid-ordersource-order
reading-order CSS özelliği, okuma akışı kapsayıcısındaki sırayı manuel olarak geçersiz kılmanıza olanak tanır. Varsayılan değeri 0 olan bir tam sayıdır.
Daha fazla bilgi edinmek için Mantıksal sıralı odak gezinmesi için CSS okuma akışını kullanma başlıklı makaleyi okuyun ve okuma akışı örneklerini deneyin.
offset-path: shape()
shape() işlevi clip-path'de zaten desteklenmektedir ve duyarlı kırpmaya olanak tanır. Bu özelliği offset-path için de etkinleştirmek, aynı türde şeklin bu özellik için kullanılabileceği küçük bir boşluğu kapatır.
SVGSVGElement üzerinde dönüştürme özelliği desteği
Bu özellik, ölçeklendirme, döndürme, çevirme ve eğme gibi dönüştürme özelliklerinin doğrudan <svg> kök öğeye
dönüştürme özelliği kullanılarak uygulanmasını sağlar. Bu geliştirme, SVG koordinat sisteminin tamamını veya içeriğini bir bütün olarak değiştirmenize olanak tanır. Böylece dinamik, duyarlı ve etkileşimli vektör grafikleri oluştururken daha fazla esneklik elde edersiniz. Bu özellik desteklendiğinde, SVG öğesi ek sarmalayıcı öğeler veya karmaşık CSS geçici çözümleri gerektirmeden dönüştürülebilir. Böylece, ölçeklenebilir ve animasyonlu web grafikleri oluşturma süreci kolaylaştırılır.
<use> sitesinin, parçayı atlayarak harici bir dokümanın kök öğesine referans vermesine izin verin.
Bu özellik kapsamında, referans şartlarını gevşeterek SVG <use> öğesini kolaylaştırıyoruz. Şu anda, SVG belgesindeki parçalara açıkça referans vermeniz gerekiyor. Parça kimliği verilmezse <use> hedefi çözemez ve hiçbir şey oluşturulmaz veya referans verilmez.
Bu özellik sayesinde, parçaları atlamak veya yalnızca harici SVG dosya adını vermek, kök öğeye otomatik olarak referans verir. Bu sayede, yalnızca köke bir kimlik atamak için referans verilen belgeyi değiştirmeniz gerekmez. Bu geliştirme, manuel düzenleme sürecini basitleştirir ve verimliliği artırır.
accent-color özelliği için sistem vurgu rengi Windows ve ChromeOS'e genişletildi
Bu seçenek, form öğelerinde işletim sisteminin vurgu rengini kullanmanıza olanak tanır. accent-color CSS özelliğini kullanarak onay kutuları, radyo düğmeleri ve ilerleme çubukları gibi form öğelerinin, kullanıcının işletim sistemi tarafından tanımlanan vurgu rengini otomatik olarak kullanmasını sağlayabilirsiniz. Bu özellik, 2021'den beri macOS'te destekleniyordu. Artık Windows ve ChromeOS'te de destekleniyor.
view-transition-name: match-element
view-transition özelliği için match-element değeri, öğenin kimliğine dayalı benzersiz bir kimlik oluşturur ve bu öğe için aynı kalır. Bu, öğenin taşındığı ve görünüm geçişiyle animasyon eklemek istediğiniz tek sayfalık uygulama durumlarında kullanılır.
Web API'leri
'Ödeme' WebAuthn kimlik bilgisi oluşturma için hata türünü hizala
payment kimlik bilgileri için WebAuthn kimlik bilgisi oluşturma sırasında oluşan hata türünü düzeltir. Geçmişte yaşanan bir spesifikasyon uyuşmazlığı nedeniyle, kullanıcı etkinliği olmadan kaynaklar arası bir iframe'de payment yeterlilik belgesi oluşturulduğunda, ödeme dışı yeterlilik belgeleri için hata verilen NotAllowedError yerine SecurityError hata veriliyordu. Bu, zarar veren bir değişikliktir. Daha önce oluşturulan hata türünü algılayan kod (örneğin, e instanceof SecurityError) etkilenir. Yalnızca kimlik bilgisi oluşturma sırasında hataları genel olarak işleyen kodlar (ör. catch (e)) doğru şekilde çalışmaya devam edecek.
Blob URL'si Bölümleme: Getirme/Gezinme
Depolama Bölümlendirme'nin devamı olarak bu özellik, üst düzey gezinmeler hariç olmak üzere Blob URL'si erişiminin depolama anahtarına (üst düzey site, çerçeve kaynağı ve has-cross-site-ancestor Boole değeri) göre bölümlendirilmesini uygular. Üst düzey gezinmeler yalnızca çerçeve kaynağına göre bölümlendirilmeye devam eder.
Bu değişiklik, PartitionedBlobURLUsage politikası ayarlanarak geçici olarak geri alınabilir. Diğer depolama alanı bölümlemeyle ilgili kurumsal politikaların desteği sonlandırıldığında bu politikanın da desteği sonlandırılacak.
Yanıt vermeyen web sayfalarından gelen kilitlenme raporlarındaki çağrı yığınları
Bu özellik, bir web sayfası sonsuz döngü çalıştıran JavaScript kodu veya diğer çok uzun hesaplamalar nedeniyle yanıt vermediğinde JavaScript çağrı yığınını yakalar. Bu sayede geliştiriciler, yanıt vermeme durumunun nedenini belirleyip daha kolay düzeltebilir. JavaScript çağrı yığını, neden yanıt vermeme olduğunda kilitlenme raporlama API'sine dahil edilir.
Tuval Kayan Nokta Renk Türleri
CanvasRenderingContext2D, OffscreenCanvasRenderingContext2D ve ImageData ile kayan noktalı piksel biçimlerini (8 bit sabit noktalı yerine) kullanma özelliği eklenir. Bu, yüksek hassasiyetli uygulamalar (ör. tıbbi görselleştirme), yüksek dinamik aralıklı içerikler ve doğrusal çalışma renk alanları için gereklidir.
Güvenilir olmayan düz metin HTTP önceden oluşturma işlemine izin verme
Şu anda önceden oluşturmaya HTTP ve HTTPS üzerinden izin verilirken önceden getirme yalnızca HTTPS üzerinden çalışır. Önceden oluşturmayı, önceden getirmeyle tutarlı olacak şekilde kısıtlayın.
Document-Isolation-Policy
Document-Isolation-Policy, bir dokümanın COOP veya COEP dağıtmasına gerek kalmadan ve sayfanın crossOriginIsolation durumundan bağımsız olarak kendisi için crossOriginIsolation'yi etkinleştirmesine olanak tanır. Politika, işlem izolasyonu ile desteklenir. Ayrıca, belge olmayan CORS merkezler arası alt kaynakları kimlik bilgileri olmadan yüklenir veya CORP başlığına sahip olması gerekir.
Daha fazla bilgiyi Document Isolation Policy: Enable powerful web features with ease (Belge İzolasyonu Politikası: Güçlü web özelliklerini kolayca etkinleştirin) başlıklı makalede bulabilirsiniz.
Web Kriptografisinde Ed25519
Bu özellik, Web Cryptography API'de Curve25519 algoritmaları (yani Ed25519 imza algoritması) için destek ekler.
IP adresi günlüğü ve raporlama
Chrome Enterprise, yerel ve uzak IP adreslerini toplayıp raporlayarak ve bu IP adreslerini Güvenlik Araştırma Günlükleri'ne (SIT) göndererek güvenlik izleme ve olay müdahalesi özelliklerini geliştiriyor. Ayrıca Chrome Enterprise, yöneticilerin Chrome Enterprise raporlama bağlayıcısını kullanarak IP adreslerini birinci taraf ve üçüncü taraf SIEM sağlayıcılarına isteğe bağlı olarak göndermesine olanak tanır. Bu özellik, Chrome Enterprise Core müşterileri tarafından kullanılabilir.
JavaScript Promise Entegrasyonu
JavaScript Promise Integration (JSPI), WebAssembly uygulamalarının JavaScript Promises ile entegre olmasına olanak tanıyan bir API'dir. WebAssembly programının Promise oluşturucu olarak hareket etmesine ve Promise içeren API'lerle etkileşim kurmasına olanak tanır. Özellikle bir uygulama, Promise içeren (JavaScript) bir API'yi çağırmak için JSPI'yi kullandığında WebAssembly kodu askıya alınır ve WebAssembly programını ilk çağıran kişiye, WebAssembly programı nihayet tamamlandığında yerine getirilecek bir Promise verilir.
Language Detector API
Language Detector API, sağlanan bir dizenin dilini tanımlayan bir JavaScript API'sidir. Bu API, dil algılama görevlerini gerçekleştirmek için ince ayar yapılmış temel bir model tarafından desteklenir.
Language Detector API, bir dize verildiğinde algılanan dillerin sıralı bir listesini ve her sonuç için bir güven puanını döndürür.
İsteğe bağlı olarak, geliştiriciler belirli dillerde algılama işleminin yapılması beklenen kullanım alanları için optimizasyon yapmaya yardımcı olmak amacıyla bir Language Detector örneği oluştururken beklenen giriş dillerinin bir listesini iletebilir.
SVGMatrix, SVGRect ve SVGPoint üzerinde kayan nokta özelliklerini ve bağımsız değişkenlerini kısıtlama
SVGMatrix, SVGRect ve SVGPoint üzerinde kayan nokta özellikleri veya bağımsız değişkenleri ayarlarken artık bunları Infinity veya Nan olarak ayarlayamazsınız. SVG spesifikasyonunda tanımlandığı gibi, bunu ayarlamaya çalışırsanız JavaScript istisnası oluşturulur.
Selection API getComposedRanges ve direction
Bu özellik, Selection API için iki yeni API yöntemi sunar:
Selection.direction, seçimin yönünü"none","forward"veya"backward"olarak döndürür.- 0 veya 1 "oluşturulmuş" listesi döndüren
Selection.getComposedRanges()StaticRange
"Birleştirilmiş" StaticRange, normal aralıkların geçemediği gölge sınırlarını geçebilir.
Örneğin:
const range = getSelection().getComposedRanges({ shadowRoots: [root] });
Seçim, shadowRoots listesinde sağlanmayan bir gölge kök sınırını aşıyorsa StaticRange uç noktaları bu ağacın dışında olacak şekilde yeniden kapsamlandırılır. Bu sayede, bilinmeyen gölge ağaçları açığa çıkarmayız.
Web uygulaması kapsamı uzantıları
Web uygulamalarının kapsamlarını diğer kaynaklara genişletmelerine olanak tanıyan bir scope_extensions web uygulaması manifest alanı ekler.
Örnek:
{
"name": "Example",
"display": "standalone",
"start_url": "/index.html",
"scope_extensions": [
{"type" : "type", "origin" : "https://example.com"}
]
}
Bu, birden fazla alt alan adını ve üst düzey alan adını kontrol eden sitelerin tek bir web uygulaması olarak sunulmasına olanak tanır.
Listelenen kaynakların, .well-known/web-app-origin-association yapılandırma dosyası kullanarak web uygulamasıyla ilişkilendirmeyi onaylamasını gerektirir.
{
"https://sample-app.com/": {
"scope": "/"
}
}
WebAssembly Branch Hints
Belirli bir dal talimatının belirli bir yolu izlemesinin çok olası olduğunu motora bildirerek derlenmiş WebAssembly kodunun performansını artırır. Bu sayede motor, kod düzeni (talimat önbelleği isabetlerini iyileştirme) ve kayıt tahsisi konusunda daha iyi kararlar verebilir.
WebGPU: externalTexture bağlama için GPUTextureView
GPUBindGroup oluştururken artık GPUTextureView, externalTexture bağlama için kullanılabilir.
WebGPU: copyBufferToBuffer aşırı yüklenme
GPUCommandEncoder copyBufferToBuffer() yöntemi artık isteğe bağlı ofsetler ve boyut parametreleriyle yeni bir aşırı yükleme kullanarak arabelleklerin tamamını kopyalamanın daha basit bir yolunu içeriyor.
Yeni kaynak denemeleri
Chrome 137'de aşağıdaki yeni origin denemelerini etkinleştirebilirsiniz.
Tam kare hızıyla oluşturma engelleme özelliği
Engelleme özelliklerine yeni bir oluşturmayı engelleyen tam kare hızı jetonu ekler. Oluşturucu, tam kare hızı jetonuyla engellendiğinde yükleme için daha fazla kaynak ayırmak amacıyla daha düşük bir kare hızında çalışır.
Oluşturulmamış iFrame'lerde medya oynatmayı duraklatma
Yerleştirilen web sitelerinin, oluşturulmayan yerleştirilmiş iframe'lerin medya oynatmasını duraklatmasına izin vermek için "media-playback-while-not-rendered" izin politikası ekler. Oluşturulmayan iframe'lerin "display" özelliği "none" olarak ayarlanmıştır. Bu sayede geliştiriciler, daha kullanıcı dostu deneyimler oluşturabilecek ve tarayıcının, kullanıcılara görünmeyen içeriklerin oynatılmasını yönetmesine izin vererek performansı artırabilecek.
Rewriter API
Rewriter API, cihaz üzerinde yapay zeka dil modeli tarafından desteklenen giriş metnini istenen şekilde dönüştürür ve yeniden ifade eder. Geliştiriciler, kelime sınırına uymak için metindeki gereksiz kısımları kaldırmak, mesajları hedef kitleye uygun olacak şekilde yeniden ifade etmek veya mesajda zararlı dil kullanıldığı tespit edilirse daha yapıcı olacak şekilde yeniden ifade etmek, gönderi veya makaleleri daha basit kelimeler ve kavramlar kullanarak yeniden ifade etmek gibi amaçlarla bu API'yi kullanabilir.
Writer API
Writer API, cihaz üzerinde yapay zeka dil modeli tarafından desteklenen bir yazma görevi istemi verildiğinde yeni materyaller yazmak için kullanılabilir. Geliştiriciler, bu API'yi kullanarak yapılandırılmış verilerin metin açıklamalarını oluşturabilir, yorumlara veya ürün açıklamasına dayalı olarak bir ürünle ilgili gönderi oluşturabilir, avantaj ve dezavantaj listelerini tam görünümlere genişletebilir ve daha birçok işlem yapabilir.