Chrome 125

Kararlı yayın tarihi: 14 Mayıs 2024

Aksi belirtilmediği sürece aşağıdaki değişiklikler Android, ChromeOS, Linux, macOS ve Windows için Chrome 125 kararlı kanalı sürümünde geçerli olur.

HTML ve DOM

Bildirim temelli gölge DOM serileştirme

Geliştiricilerin gölge kökleri içeren DOM ağaçlarını seri hale getirmesini sağlayan bir özellik. Bu özellik son zamanlarda HTML standardında standart hale getirilmiştir.

İzleme hatası #41490936 | ChromeStatus.com girişi | Spesifikasyon

CSS

CSS Bağlayıcı Konumlandırma

CSS sabit konumlandırması, geliştiricilerin mutlak olarak konumlandırılmış bir öğeyi sayfadaki bir veya daha fazla öğeye (bağlayıcılar) JavaScript kullanmadan bildirimli bir şekilde bağlamalarına olanak tanır. Çapa konumlandırması, çapalar kaydırılabilir olduğunda etkili bir şekilde çalışır. Yaygın bir kullanım alanı, öğeyi çağıran öğenin yanına ipucu gibi bir pop-up veya bir seçme menüsü ve bu menünün pop-up seçenekleri listesi gibi bir pop-up yerleştirmektir. Çapa konumlandırma özelliğinden önce, bu kullanım alanlarında, pop-up'ı dinamik olarak konumlandırmak ve çağırma öğesi kaydırılırken bunu sabit tutmak için JavaScript gerekiyordu. Bu, bir performans tabancası ve düzgün çalışması zordu. Çapa konumlandırmayla bu kullanım alanları etkili ve bildirime dayalı bir şekilde uygulanabilir.

Sabit konumlandırma özelliği çok sayıda CSS özelliğinden oluşur. Temel özelliklerden bazıları şunlardır:

  • anchor-name: Bir öğeyi diğer öğeler için bağlayıcı olacak şekilde ayarlar.
  • position-anchor: Sabit bir öğenin sabit konumlandırma için kullanması gereken "varsayılan" bağlayıcıyı açıklar.
  • anchor() işlevi: Sabit öğenin konumlandırılmasında sabit öğenin konumuna başvuruda bulunmak için kullanılır.
  • inset-area: konumlandırmanın, ortak göreli konumlar için kullanılan kısaltmasıdır.

CSS anchor konumlandırma API'siyle tanışın | İzleme hatası #40059176 | ChromeStatus.com girişi | Spesifikasyon

CSS adımlı değer işlevleri: round(), mod() ve rem()

Basamaklı değerli işlevlerin (round(), mod() ve rem()) tümü belirli bir değeri başka bir "adım değerine" göre dönüştürür.

round() CSS işlevi, seçilen bir yuvarlama stratejisine göre yuvarlanmış bir sayı döndürür.

mod() CSS işlevi, ilk parametre ikinci parametreye bölündüğünde kalan modülü döndürür (JavaScript kalan operatörüne (%) benzer şekilde). Modül, bir işlenenin (bölünen) ikinci bir işlenene (bölen) bölündüğünde kalan değerdir. Her zaman bölen işaretini alır.

rem() CSS işlevi, birinci parametre ikinci parametreye bölündüğünde kalan değeri, JavaScript kalan operatörüne (%) benzer şekilde döndürür. Kalan, bir işlenenin (bölünen) ikinci bir işlenene (bölen) bölündüğünde kalan değerdir. Her zaman karın işaretini alır.

İzleme hatası #40253179 | ChromeStatus.com girişi | Spesifikasyon

CSS özel :state() için yeni söz dizimi

CSS özel durumu, özel öğelerin kendi sözde sınıflarını göstermesine olanak tanır. Söz dizimi artık CSSWG'de tanımlanmıştır ve Chrome 125 artık yeni :state(foo) söz dizimini desteklemektedir. Bu değişiklik, Chrome'un hem eski söz dizimini (:--foo) hem de yeni söz dizimini desteklediği bir pencereye sahip olur. Böylece web siteleri, yeni söz dizimine geçiş yapabilir.

ChromeStatus.com girişi | Spesifikasyon

Yaklaşık% 100 veya 0'lık bir açıklığa sahip Oklab ve Oklch renkleri için süreksizliği kaldırın

Bu değişiklikten önce, açıklık değeri% 100 olan tüm Lab, LCH, Oklab ve Oklch renkleri diğer iki parametreden bağımsız olarak beyaz olarak oluşturuluyordu. Bu alanlardaki açıklık değeri 0 olan tüm renkler siyah olarak oluşturuldu. Bu iki eşleme, renk geçişlerinde kesintilere neden oldu ve web geliştiricileri için beklenmedik bir durumdu.

Bu geri alma işlemiyle bu renkler artık yapay olarak eşlenmez ve sonuçta gösterilen renk, etraftaki renklerle tutarlı olur ve ekranın gam eşlemesine bağlıdır.

ChromeStatus.com girişi | Spesifikasyon

Renk şeması kök kaydırma çubukları kullanıldı

"Sayfanın desteklenen renk şemaları" değeri "normal" ise veya belirtilmemişse ve kök öğe için hesaplanan color-scheme değeri normal ise tarayıcının, görüntü alanı kaydırma çubuklarını oluşturmak üzere kullanıcının tercih ettiği renk şemasını kullanmasını sağlar. Görüntü alanı kaydırma çubukları, web içeriğinin dışında olarak değerlendirilebilir. Bu nedenle, geliştirici renk şemalarını desteklediğini açıkça belirtmemişse kullanıcı aracıları, görüntü alanı kaydırma çubuklarını oluştururken kullanıcının tercih ettiği renk şemasını dikkate almalıdır.

Bu değişiklik, geliştiricilerin kaydırma çubuklarının renk şemasını kontrol etmesini engellemez. Yeni davranış, yalnızca geliştirici kök öğe için renk şemasını belirtmemişse tarayıcının, görüntü alanının yer paylaşımlı olmayan kaydırma çubuklarını oluşturmak üzere kullanıcının tercih ettiği renk şemasını kullanmasını sağlar.

title | İzleme hatası #40259909 | ChromeStatus.com girişi | Spesifikasyon

view-transitions sınıf

Bir veya daha fazla görünüm geçişi sınıfı belirtmenizi sağlayan yeni bir CSS özelliği view-transition-class bulunur. Daha sonra ::view-transition-group(*.class) gibi bu sınıfları kullanarak ViewTransition sözde öğelerini seçebilirsiniz.

Bu, ViewTransition API'nin bir uzantısıdır. Bu API, görünüm geçişi sözde öğelerinin stilini, CSS sınıflarının normal DOM öğelerinin stilini basitleştirmesine benzer şekilde basitleştirir.

İzleme hatası #41492972 | ChromeStatus.com girişi | Spesifikasyon

Yükleniyor

WebSocket oluştururken HTTP ve HTTPS URL'lerini kabul edin

Bu güncelleme, WebSocket oluşturucuda HTTP ve HTTPS şemalarını etkinleştirir, böylece geliştiricilerin göreli URL'ler kullanmalarına da izin verir. Bunlar, ws: ve wss: dahili şemalarına göre normalleştirilir.

İzleme hatası #325979102 | ChromeStatus.com girişi | Spesifikasyon

Web API'leri

Attribution Reporting API'ye yapılan eklemeler

Attribution Reporting API'ye, hata ayıklama raporlarını ayrıştırmayı destekleyerek ek hata ayıklama özellikleri oluşturmak, tercih edilen kayıt platformunu belirten bir alanı destekleyerek API ergonomisini iyileştirmek ve gizliliği iyileştirmek için özellikler eklendi.

ChromeStatus.com girişi

Compute Pressure API

Compute Pressure API, sistemdeki CPU yükünü temsil eden üst düzey durumlar sunar. Bu sayede uygulama, doğru temel donanım metriklerinin kullanılmasını sağlayarak kullanıcıların, sistem yönetilemez bir stres altında olmadığı sürece kullanıcılara sunulan tüm işlem gücünden yararlanmasını sağlar.

Intel, video konferans uygulamalarının özellikleri ve performansı dinamik olarak dengelemesini sağlayan bu API'nin tasarım ve uygulama çalışmalarına öncülük etti.

Compute Pressure API | 40683064 izleme hatası | ChromeStatus.com girişi | Spesifikasyon

Bu işlem, üçüncü taraf bağlamında bölümlendirilmemiş çerez ve çerez olmayan depolamaya erişim sağlamak amacıyla Storage Access API'nin önerilen uzantısını (geriye dönük uyumluluğa sahiptir ve kaynak deneme sürümündedir) başlatır. Mevcut API yalnızca, çerez olmayan depolamadan farklı kullanım alanlarına sahip çerezlere erişim sağlar.

İzleme hatası #40282415 | ChromeStatus.com girişi | Spesifikasyon

Kimlik onayı uç noktasıyla ilgili FedCM CORS koşulu

FedCM API'deki getirmeler, gerekli özellikleri nedeniyle bunları belirlemek zordur. Hesap uç noktasıyla ilgili tartışmalar devam etmekle birlikte, kimlik doğrulaması uç noktasının CORS'yi kullanması gerektiği konusunda da büyük ölçüde fikir birliği mevcuttur. Bu güncelleme, bu getirme işleminin güvenlik özelliklerini web platformundaki diğer getirmelerle daha yakın bir şekilde eşleştirir.

FedCM güncellemeleri: Button Mode API kaynak denemesi, CORS ve SameSite | İzleme hatası #40284123 | ChromeStatus.com girişi

FedCM artık CORS ile kimlik doğrulama istekleri gönderiyor. Bu değişiklik, Chrome'un SameSite=None göndermeye devam etmesine rağmen kimlik doğrulama uç noktasına SameSite=Strict çerezleri göndermeyeceğini belirtir. Hesap uç noktasına ve kimlik doğrulama uç noktasına farklı bir çerez grubu göndermek anlamlı olmadığından, bu değişiklik bunları tutarlı hale getirir.

SameSite=Strict çerezlerinin gönderilmemesi, genel olarak requestStorageAccess davranışı ve siteler arası isteklerle de tutarlıdır.

İzleme hatası #329145816 | ChromeStatus.com girişi | Spesifikasyon

Birlikte çalışabilir fare hareketi varsayılan işlemi

Chrome, metin seçimi (ve hatta geçmişte sürükleyip bırakma işlemi) gibi diğer API'leri engellemek için fareyle hareket ettirme etkinliklerinin iptal edilmesine izin veriyordu. Bu, diğer önde gelen tarayıcılarla eşleşmediği gibi, Kullanıcı Arayüzü Etkinliği spesifikasyonuna da uymamaktadır. Artık metin seçimi, fareyi hareket ettirmenin varsayılan işlemi olmayacak. Yine de selectstart ve dragstart etkinlikleri iptal edilerek metin seçimi ile sürükle ve bırak işlemleri önlenebilir.

Bu özellik, Chrome 125'ten itibaren yavaş yavaş kullanıma sunulacaktır. Chrome 126'ya kadar tüm kullanıcıların bu özelliği kullanabilmesi beklenmektedir.

Demo | İzleme hatası #40078978 | ChromeStatus.com girişi | Spesifikasyon

Normal ifade değiştiricileri

Normal ifade değiştiricileri, bir kalıp içine i, m ve s' işaretlerini yerel olarak değiştirme olanağı ekler.

Bir alt ifade için işareti etkinleştirmek üzere (?X:subexpr) kullanın; burada X değeri i, m veya s değerlerinden biridir. Bir alt ifade için işareti devre dışı bırakmak üzere (-X:subexpr) işlevini kullanın.

Örneğin, büyük/küçük harfe duyarlılık içermeyen i işareti için:

const re1 = /^[a-z](?-i:[a-z])$/i;
re1.test("ab"); // true
re1.test("Ab"); // true
re1.test("aB"); // false

const re2 = /^(?i:[a-z])[a-z]$/;
re2.test("ab"); // true
re2.test("Ab"); // true
re2.test("aB"); // false

ChromeStatus.com girişi | Spesifikasyon

Normal ifade kopyası adlandırılmış yakalama grupları

Adlandırılmış yakalama gruplarının kopyalarının oluşturulması, aynı yakalama grubu adını alternatiflerde kullanmanıza olanak tanır. Örneğin:

const re = /(?<year>[0-9]{4})-[0-9]{2}|[0-9]{2}-(?<year>[0-9]{4})/;

Bu durumda year, 1. alternatif ((?<year>[0-9]{4})-[0-9]{2}) veya 2. alternatif ([0-9]{2}-(?<year>[0-9]{4})) için geçerlidir.

ChromeStatus.com girişi | Spesifikasyon

Chrome Uygulamaları

Chrome Uygulamalarında Direct Sockets API'si

Bu güncelleme, Chrome uygulamalarında Doğrudan Yuvalar'ı etkinleştirerek, web uygulamalarının ağ cihazları ve sistemlerle doğrudan iletim kontrol protokolü (TCP) ve kullanıcı datagram protokolü (UDP) iletişimi kurmasını sağlayarak özel uygulamaların Chrome Uygulamalarından Yalıtılmış Web Uygulamalarına geçişini kolaylaştırmaya yardımcı olur.

ChromeStatus.com girişi | Spesifikasyon

Yeni kaynak denemeleri

FedCM Button Mode API ve Other Account API'yi Kullanma

Bu kaynak denemesi aşağıdaki iki FedCM API'yi içerir.

Button Mode API, web sitelerinin bir düğme tıklamasında (ör. IdP'de oturum aç) FedCM'yi çağırmasına olanak tanır. Bu, kullanıcılar çıkış yaptığında kullanıcı arayüzü göstermeyen widget modunun aksine FedCM'nin her zaman görünür bir kullanıcı arayüzüyle yanıt verdiğini garanti etmesini gerektirir. FedCM API'nin düğme modunda çağrılması, kullanıcıların çıkış yapmış olduklarında IdP'ye (bir iletişim penceresinde) giriş yapmalarını sağlar.

Ayrıca, düğme modu açık bir kullanıcı hareketi içinde çağrıldığından, widget modundaki (açık bir niyet olmadan) kullanıcı arayüzüne kıyasla kullanıcı arayüzü de daha belirgin (örneğin, ortalanmış ve kalıcı) olabilir. FedCM güncellemeleri: Button Mode API kaynak denemesi, CORS ve SameSite bölümünden Button Mode API'nin işleyiş şekli hakkında daha fazla bilgi edinin

Use Other Account API, Kimlik Sağlayıcıların kullanıcıların başka hesaplarda oturum açmasına olanak tanır.

Kaynak Denemesi | Demo | İzleme hatası #40284792 | ChromeStatus.com girişi | Spesifikasyon

Katlanabilir API'ler

Bu kaynak denemesi Device Posture API ve Viewport Segmentleri Numaralandırma API'sini içerir. Bu API'ler, geliştiricilerin katlanabilir cihazları hedeflemesine yardımcı olmak amacıyla tasarlanmıştır.

Kaynak Denemesi | Katlanabilir API'ler için kaynak denemesi | ChromeStatus.com girişi | Spesifikasyon

Ön ekli HTMLVideoElement Tam ekran özellikleri ve yöntemleri için kullanımdan kaldırma denemesi

Bu desteği sonlandırma denemesi, kodunuzu düzenlemek için daha fazla zamana ihtiyacınız varsa önek eklenmiş HTMLVideoElement özellikleri ve yöntemleri için desteği tekrar etkinleştirmenize olanak tanır.

Kaynak Denemesi | ChromeStatus.com girişi

Önceden yükleme taramasını atla

Alt kaynak getirmesi olmayan sayfaların performans dengelerini keşfetmek için önceden yükleme tarayıcısını atlar.

Önceden yükleme tarayıcısı adımı, tahmine dayalı önceden getirme işlemi uygulayarak alt kaynak getirmeli sayfaların performansından faydalanır. Ancak bu adımdan faydalanmayan sayfalar için, yani alt kaynakları olmayan sayfalar için bu ek işlem yükü çok azdır.

Bu deneme, bu ek yükü azaltarak yararlanmak isteyen ileri düzey web kullanıcıları için ön yükleme tarayıcısını devre dışı bırakmak üzere sayfa düzeyinde bir kontrol sağlar. Bu denemeden toplanan veriler, değiştirilmiş bir API'nın veya farklı bir HTML ön yükleme tarayıcısının uygulanmasının yararlı olup olmayacağını değerlendirebilir.

Kaynak Denemesi | İzleme hatası #330802493 | ChromeStatus.com girişi | Spesifikasyon

Kullanımdan kaldırma ve kaldırma işlemleri

"window-management" izni ve izin politikası için "window-placement" takma adını kaldırın

"window-management" izni ve izin politikası için "window-placement" takma adını kaldırır. Bu, ileride "window-placement" özelliğini kullanımdan kaldırıp kaldırarak dizeleri yeniden adlandırmaya yönelik daha kapsamlı çalışmanın bir parçasıdır. WindowManagement API'si zaman içinde geliştikçe bu terminoloji değişikliği, açıklayıcının daha uzun ömürlü olmasını sağlar.

title | İzleme hatası #40842072 | ChromeStatus.com girişi | Spesifikasyon

Kurumsal Politikanın Kaldırılması: NewBaseUrlInheritanceBehaviorAllowed

Bu kuruluş politikasının geçersiz kıldığı temel kod değişikliği (yeni temel URL devralma davranışını etkinleştirme), Ağustos 2023'ten (Chrome 118) itibaren kararlı sürümlerde etkinleştirildi. Bilinen sorunlar giderildiğinden, bu kurumsal politika Chrome 125'te kaldırılmıştır.

ChromeStatus.com girişi

Önek eklenmiş HTMLVideoElement Tam ekran özelliklerinin ve yöntemlerinin kaldırılması

Ön ekli HTMLVideoElement tam ekran API'leri, Chrome 38'den itibaren kullanımdan kaldırılmıştır. Bunların yerini, ilk olarak 2018'de Chrome 71'de öne çıkarılmadan gönderilen Element.requestFullscreen() ile değiştirmiştir.

Aşağıdaki özellikler ve yöntemler HTMLVideoElement'ten kaldırılacaktır:

  • webkitSupportsFullscreen
  • webkitDisplayingFullscreen
  • webkitEnterFullscreen()
  • webkitExitFullscreen()
  • webkitEnterFullScreen() (Tam ekranda "S" harflerinin farklı büyük harf kullanımına dikkat edin)
  • webkitExitFullScreen()

Siteniz hâlâ bunları kullanmaya devam ediyorsa ve kodu güncellemek için daha fazla zamana ihtiyacınız varsa bu yayında listelenen kullanımdan kaldırma deneme sürümüne kaydolun.

ChromeStatus.com girişi

Daha fazla bilgi

Daha fazlasını mı arıyorsunuz? Aşağıdaki ek kaynaklara göz atın.

Google Chrome'u indirin

Android, Masaüstü veya iOS için Chrome'u indirin.