Chrome 140

Tanggal rilis stabil: 2 September 2025

Kecuali dinyatakan lain, perubahan berikut berlaku untuk rilis saluran stabil Chrome 140 untuk Android, ChromeOS, Linux, macOS, dan Windows.

CSS

Aritmatika yang diketik CSS

Aritmatika yang diketik memungkinkan Anda menulis ekspresi di CSS seperti calc(10em / 1px) atau calc(20% / 0.5em * 1px). Hal ini berguna dalam, misalnya, tipografi, karena memungkinkan Anda mengonversi nilai yang diketik menjadi nilai yang tidak diketik dan menggunakannya kembali untuk properti yang menerima angka. Kasus penggunaan lainnya adalah mengalikan nilai tanpa satuan dengan jenis lainnya. Misalnya, Anda kini dapat melakukan casting dari piksel ke derajat.

Melacak bug #40768696 | Entri ChromeStatus.com | Spesifikasi

Properti caret-animation CSS

Chromium mendukung animasi properti caret-color. Namun, saat dianimasikan, perilaku berkedip default kursor mengganggu animasi.

Properti CSS caret-animation memiliki dua kemungkinan nilai: auto dan manual. auto berarti default browser (berkedip), dan manual berarti developer mengontrol animasi kursor. Selain itu, pengguna yang terganggu oleh atau mengalami reaksi merugikan terhadap visual yang berkedip atau berflash dapat menonaktifkan kedipan dengan stylesheet pengguna.

Bug pelacakan #329301988 | Entri ChromeStatus.com | Spesifikasi

highlightsFromPoint API

highlightsFromPoint API memungkinkan developer berinteraksi dengan sorotan kustom. Fungsi ini mendeteksi sorotan yang ada pada titik tertentu dalam dokumen. Interaksi ini berguna untuk fitur web yang kompleks, di mana beberapa sorotan dapat tumpang-tindih atau ada dalam shadow DOM. Dengan menyediakan deteksi sorotan berbasis titik yang presisi, API ini memungkinkan developer mengelola interaksi dinamis dengan sorotan kustom secara lebih efektif. Misalnya, developer dapat merespons peristiwa klik atau pengarahan kursor pengguna pada area yang disorot untuk memicu tooltip kustom, menu konteks, atau fitur interaktif lainnya.

Bug pelacakan #365046212 | Entri ChromeStatus.com | Spesifikasi

Opsi container ScrollIntoView

Opsi penampung ScrollIntoViewOptions memungkinkan developer melakukan operasi scrollIntoView yang hanya men-scroll penampung scroll ancestor terdekat. Misalnya, cuplikan berikut hanya men-scroll penampung scroll target untuk menampilkan target, tetapi tidak akan men-scroll semua penampung scroll ke area tampilan:

target.scrollIntoView({container: 'nearest'});

Entri ChromeStatus.com | Spesifikasi

Transisi tampilan: Mewarisi lebih banyak properti animasi

Menambahkan lebih banyak properti animasi untuk diwarisi melalui pseudo-tree transisi tampilan:

  • animation-timing-function
  • animation-iteration-count
  • animation-direction
  • animation-play-state

Bug pelacakan #427741151 | Entri ChromeStatus.com | Spesifikasi

Pseudos transisi tampilan mewarisi animation-delay.

Selain pembaruan sebelumnya, properti animation-delay kini diwarisi melalui pseudo-pohon transisi tampilan.

Entri ChromeStatus.com | Spesifikasi

Grup transisi tampilan bertingkat

Fitur ini memungkinkan transisi tampilan menghasilkan hierarki elemen semu bertingkat, bukan hierarki datar. Hal ini memungkinkan transisi tampilan muncul lebih sesuai dengan elemen aslinya dan maksud visualnya. Hal ini memungkinkan clipping, transformasi 3D bertingkat, dan penerapan efek yang tepat seperti opasitas, masking, dan filter.

Bug pelacakan #399431227 | Entri ChromeStatus.com | Spesifikasi

Menerapkan overscroll-behavior area tampilan dari root

Perubahan ini menerapkan overscroll-behavior dari root, bukan bagian utama.

Grup kerja CSS memutuskan untuk tidak menerapkan properti dari <body> ke area tampilan. Sebaliknya, properti area tampilan diterapkan dari elemen root (<html>). Dengan demikian, overscroll-behavior harus diterapkan dari elemen root. Namun, Chrome telah lama mengalami masalah: Chrome menerapkan overscroll-behavior dari <body>, bukan root. Perilaku ini tidak dapat dioperasikan dengan browser lain. Perubahan ini membuat Chrome mematuhi spesifikasi dan dapat beroperasi dengan implementasi lain.

Bug pelacakan #41453796 | Entri ChromeStatus.com | Spesifikasi

CSS counter() dan counters() dalam teks alternatif properti content

Fitur ini menambahkan kemampuan untuk menggunakan counter() dan counters() dalam teks alternatif properti content. Hal ini memberikan informasi yang lebih bermakna untuk meningkatkan aksesibilitas.

Bug pelacakan #417488055 | Entri ChromeStatus.com | Spesifikasi

Properti scroll-target-group CSS

Properti scroll-target-group menentukan apakah elemen adalah container grup penanda scroll. Kode ini menerima salah satu nilai berikut:

  • 'none': Elemen tidak membuat penampung grup penanda scroll.
  • 'auto': Elemen membuat penampung grup penanda scroll yang membentuk grup penanda scroll yang berisi semua elemen penanda scroll yang memiliki penampung grup penanda scroll ancestor terdekat ini.

Dengan membuat penampung grup penanda scroll, semua elemen HTML anchor dengan ID fragmen yang berada di dalam penampung tersebut akan menjadi elemen HTML yang setara dengan elemen semu ::scroll-marker. Elemen anchor yang target scroll-nya saat ini terlihat dapat diberi gaya menggunakan pseudo-class :target-current.

Melacak bug #6607668 | Entri ChromeStatus.com | Spesifikasi

Mendukung deskriptor font-variation-settings dalam aturan @font-face

CSS memungkinkan developer menyesuaikan bobot, lebar, kemiringan, dan sumbu lainnya dari font menggunakan properti font-variation-settings pada setiap elemen. Namun, browser berbasis Chromium tidak mendukung properti ini dalam deklarasi @font-face. Fitur ini mendukung sintaksis berbasis string untuk font-variation-settings sebagaimana ditentukan dalam CSS Fonts Level 4. Tag fitur yang tidak valid atau tidak dikenal akan diabaikan sesuai spesifikasi. Tidak ada formulir biner atau non-standar yang didukung. Font variabel semakin banyak digunakan untuk performa dan fleksibilitas tipografi. Menambahkan dukungan untuk deskriptor ini di Chromium meningkatkan kontrol, mengurangi pengulangan, dan mendukung pendekatan yang lebih skalabel dan modern terhadap tipografi web.

Melacak bug #40398871 | Entri ChromeStatus.com | Spesifikasi

DOM

Atribut sumber ToggleEvent

Atribut source dari ToggleEvent berisi elemen yang memicu ToggleEvent untuk diaktifkan, jika ada. Misalnya, jika pengguna mengklik elemen <button> dengan atribut popovertarget atau commandfor yang ditetapkan untuk membuka popover, ToggleEvent yang diaktifkan pada popover akan memiliki atribut sumber yang ditetapkan ke <button> pemanggilan.

Entri ChromeStatus.com | Spesifikasi

Aplikasi Web Terisolasi (IWA)

Controlled Frame API (hanya tersedia untuk IWA)

Fitur ini menambahkan Controlled Frame API yang hanya tersedia untuk Aplikasi Web Terisolasi (IWA). Seperti API dengan nama serupa di platform lain, Controlled Frame memungkinkan penyematan semua konten, bahkan konten pihak ketiga yang tidak dapat disematkan di <iframe>. Controlled Frame juga memungkinkan pengendalian konten yang disematkan dengan kumpulan metode dan peristiwa API. Untuk mengetahui informasi selengkapnya tentang Aplikasi Web Terisolasi, lihat penjelasan Aplikasi Web Terisolasi.

Melacak bug #40191772 | Entri ChromeStatus.com | Spesifikasi

JavaScript

Uint8Array ke dan dari base64 dan hex

Base64 adalah cara umum untuk merepresentasikan data biner arbitrer sebagai ASCII. JavaScript memiliki Uint8Arrays untuk data biner. Namun, tidak ada mekanisme bawaan untuk mengenkode data tersebut sebagai base64, atau untuk mengambil data base64 dan menghasilkan Uint8Array yang sesuai. Fitur ini menambahkan kemampuan dan metode untuk mengonversi antara string hex dan Uint8Arrays.

Entri ChromeStatus.com | Spesifikasi

Melihat perubahan waktu penyelesaian transisi

Waktu penyelesaian saat ini terjadi dalam langkah-langkah siklus proses rendering. Artinya, kode yang berjalan sebagai hasil penyelesaian promise terjadi setelah frame visual yang menghapus transisi tampilan dihasilkan. Hal ini dapat menyebabkan kedipan di akhir animasi jika skrip memindahkan gaya untuk mempertahankan status yang serupa secara visual. Perubahan ini menyelesaikan masalah dengan memindahkan langkah-langkah pembersihan transisi tampilan agar berjalan secara asinkron setelah siklus proses selesai.

Melacak bug #430018991 | Entri ChromeStatus.com

Web API

Opsi ReadableStreamBYOBReader min

Fitur ini memperkenalkan opsi min ke metode ReadableStreamBYOBReader.read(view) yang ada. Metode ini sudah menerima ArrayBufferView yang digunakan untuk membaca data, tetapi saat ini tidak menjamin berapa banyak elemen yang ditulis sebelum pembacaan diselesaikan. Dengan menentukan nilai min, Anda dapat mewajibkan aliran menunggu hingga setidaknya sebanyak itu elemen tersedia sebelum menyelesaikan pembacaan. Hal ini meningkatkan perilaku saat ini, di mana operasi baca dapat diselesaikan dengan lebih sedikit elemen daripada yang dapat ditampung tampilan.

Bug pelacakan #40942083 | Entri ChromeStatus.com | Spesifikasi

Get Installed Related Apps API (navigator.getInstalledRelatedApps) memberi situs akses untuk mengetahui apakah aplikasi terkait yang sesuai diinstal. Situs hanya diizinkan menggunakan API ini jika aplikasi memiliki hubungan yang sudah terjalin dengan asal web.

API ini diluncurkan di Chrome 80 untuk Android. Dukungan tambahan untuk aplikasi web di Desktop diaktifkan di Chrome 140.

Dokumen | Bug pelacakan #895854 | Entri ChromeStatus.com | Spesifikasi

Dalam beberapa kasus, penting untuk membedakan di sisi server antara cookie yang ditetapkan oleh server dan yang ditetapkan oleh klien. Salah satu kasus tersebut melibatkan cookie yang biasanya selalu ditetapkan oleh server. Namun, kode yang tidak terduga (seperti eksploitasi XSS, ekstensi berbahaya, atau commit dari developer yang bingung) dapat menyetelnya di klien. Proposal ini menambahkan sinyal yang memungkinkan server membuat perbedaan tersebut. Lebih khusus lagi, metode ini menentukan awalan __Http dan __HostHttp, yang memastikan cookie tidak ditetapkan di sisi klien menggunakan skrip.

Melacak bug #426096760 | Entri ChromeStatus.com | Spesifikasi

Service worker

Skrip SharedWorker mewarisi pengontrol untuk URL skrip blob

Spesifikasi menyatakan bahwa worker harus mewarisi pengontrol untuk URL blob. Namun, kode yang ada hanya mengizinkan dedicated worker mewarisi pengontrol; shared worker tidak. Perubahan ini memperbaiki perilaku Chrome agar sesuai dengan spesifikasi. Kebijakan Enterprise SharedWorkerBlobURLFixEnabled mengontrol fitur ini.

Bug pelacakan #324939068 | Entri ChromeStatus.com | Spesifikasi

Tambahkan ServiceWorkerStaticRouterTimingInfo

Fitur ini menambahkan informasi waktu untuk ServiceWorker Static Routing API, yang ditampilkan di Navigation Timing API dan Resource Timing API untuk digunakan oleh developer. ServiceWorker memberikan informasi pengaturan waktu untuk menandai titik waktu tertentu.

Fitur ini menambahkan dua informasi waktu yang relevan dengan API perutean Statis:

  • RouterEvaluationStart: Waktu untuk mulai mencocokkan permintaan dengan aturan router yang terdaftar.
  • CacheLookupStart: Waktu untuk mulai mencari penyimpanan cache jika sumbernya adalah "cache".

Selain itu, fitur ini menambahkan dua informasi sumber router: sumber router yang cocok dan sumber router akhir.

Melacak bug #41496865 | Entri ChromeStatus.com | Spesifikasi

Uji coba origin

Mengaktifkan notifikasi panggilan masuk

Fitur ini memperluas Notifications API untuk memungkinkan PWA terinstal mengirim notifikasi panggilan masuk—notifikasi dengan tombol bergaya panggilan dan nada dering. Ekstensi ini membantu aplikasi web VoIP menciptakan pengalaman yang lebih menarik dengan mempermudah pengguna mengenali dan menjawab notifikasi panggilan. Selain itu, fitur ini membantu menjembatani kesenjangan antara penerapan aplikasi native dan web yang memiliki keduanya.

Uji Coba Origin | Bug pelacakan #detail?id=1383570 | Entri ChromeStatus.com | Spesifikasi

Crash Reporting key-value API

Fitur ini memperkenalkan API nilai kunci baru, yang untuk sementara disebut window.crashReport, yang didukung oleh peta per dokumen yang menyimpan data yang ditambahkan ke laporan error.

Data yang ditempatkan di peta pendukung API ini dikirim dalam CrashReportBody jika terjadi error proses perender di situs. Hal ini memungkinkan developer men-debug status tertentu dalam aplikasi mereka yang mungkin menyebabkan error tertentu.

Uji Coba Origin | Bug pelacakan #400432195 | Entri ChromeStatus.com | Spesifikasi

Tambahkan acara clipboardchange

Peristiwa clipboardchange diaktifkan setiap kali aplikasi web atau aplikasi sistem lainnya mengubah konten papan klip sistem. Hal ini memungkinkan aplikasi web seperti klien desktop jarak jauh menyinkronkan papan klipnya dengan papan klip sistem. API ini menyediakan alternatif yang efisien untuk melakukan polling pada papan klip dengan JavaScript untuk mendeteksi perubahan.

Uji Coba Origin | Bug pelacakan #41442253 | Entri ChromeStatus.com | Spesifikasi

Mengaktifkan SharedWorker di Android

Permintaan lama untuk dukungan SharedWorker di Android berasal dari beberapa kebutuhan yang dinyatakan oleh developer web:

  • Berbagi dan efisiensi resource: Developer berupaya membagikan satu koneksi WebSocket atau Server-Sent Events (SSE) di beberapa tab, sehingga menghemat resource.
  • Pengelolaan resource persisten: Persyaratan untuk membagikan dan mempertahankan resource di seluruh tab, terutama untuk teknologi seperti SQLite berbasis WASM.
  • Menutup kesenjangan fitur: Browser seluler utama lainnya, termasuk Safari di iOS dan Firefox di Android, sudah mendukung SharedWorker, sehingga Chrome di Android menjadi browser utama terakhir yang mengatasi kesenjangan ini.

Uji Coba Origin | Entri ChromeStatus.com | Spesifikasi

Penghapusan

Menghentikan pengiriman header Purpose: prefetch dari pengambilan data dan pra-rendering

Pengambilan data dan pra-rendering kini menggunakan header Sec-Purpose, sehingga header Purpose: prefetch lama dihapus.

Hal ini akan dicakup ke pengambilan data aturan spekulasi prefetch, pra-rendering aturan spekulasi prerender, <link rel=prefetch>, dan <link rel=prerender> non-standar Chromium.

Melacak bug #420724819 | Entri ChromeStatus.com | Spesifikasi

Menghentikan aturan ukuran font khusus untuk H1 dalam beberapa elemen

Spesifikasi HTML berisi daftar aturan khusus untuk tag <h1> yang bertingkat dalam tag <article>, <aside>, <nav>, atau <section>:

Aturan khusus ini tidak digunakan lagi karena menyebabkan masalah aksesibilitas. Secara visual, aturan ini mengurangi ukuran font pada elemen <h1> bertingkat sehingga "terlihat" seperti elemen <h2>, tetapi penurunan tingkat ini tidak tecermin di hierarki aksesibilitas.

Bug pelacakan #394111284 | Entri ChromeStatus.com | Spesifikasi