Dipublikasikan: 05 Maret 2025
Kecuali jika dinyatakan lain, perubahan berikut berlaku untuk rilis saluran Chrome beta terbaru untuk Android, ChromeOS, Linux, macOS, dan Windows. Pelajari lebih lanjut fitur yang tercantum di sini melalui link yang disediakan atau dari daftar di ChromeStatus.com. Chrome 135 adalah versi beta mulai 5 Maret 2025. Anda dapat mendownload versi terbaru di Google.com untuk desktop atau di Google Play Store di Android.
CSS dan UI
Rilis ini menambahkan tiga belas fitur CSS dan UI baru.
Offset scroll yang diingat oleh pemosisian anchor
Menambahkan dukungan untuk konsep offset scroll
yang diingat. Jika elemen yang diposisikan memiliki anchor default, dan terikat ke anchor ini di salah satu tepi, dan terhadap blok penampung asli di tepi lainnya, offset scroll akan diperhitungkan saat menentukan ukuran elemen. Artinya,
Anda dapat menggunakan semua ruang yang terlihat (menggunakan position-area
) untuk elemen
yang ditautkan saat dokumen di-scroll pada offset scroll tertentu. Untuk
menghindari tata letak (mengubah ukuran elemen) setiap kali dokumen di-scroll, browser
menggunakan offset scroll yang diingat, bukan selalu menggunakan
offset scroll saat ini. Offset scroll yang diingat diperbarui pada titik penghitungan ulang anchor, yang merupakan posisi tempat elemen yang diposisikan
awalnya ditampilkan, atau, saat opsi posisi yang berbeda
(position-try-fallbacks
) dipilih.
Inertness CSS
Membuat elemen menjadi tidak aktif akan memengaruhi apakah elemen tersebut dapat difokuskan, diedit, dipilih, dan
ditelusuri dengan temukan di halaman. Hal ini juga memengaruhi apakah elemen tersebut terlihat di
hierarki aksesibilitas. Properti interactivity
menentukan apakah elemen
dan turunan hierarki datarnya (termasuk run teks) tidak aktif atau tidak. Properti
interactivity
menerima salah satu dari dua nilai: auto
atau inert
.
Properti overflow logis
Properti CSS overflow-inline
dan overflow-block
memungkinkan Anda menetapkan overflow
dalam arah inline dan blok relatif terhadap mode penulisan. Dalam mode penulisan horisontal,
overflow-inline
dipetakan ke overflow-x
, sedangkan dalam mode penulisan
vertikal, overflow-inline
dipetakan ke overflow-y
.
Fungsi terkait tanda tangan: abs()
dan sign()
Fungsi terkait tanda abs()
dan sign()
menghitung berbagai fungsi
yang terkait dengan tanda argumennya.
Properti dynamic-range-limit
Memungkinkan halaman membatasi kecerahan maksimum konten HDR.
Fungsi shape()
Fungsi shape()
memungkinkan bentuk bebas responsif di properti
clip-path
. Ini memungkinkan Anda menentukan serangkaian perintah, yang setara dengan perintah di
path()
. Namun, perintah ini menerima unit responsif (misalnya, %
atau
vw
), serta nilai CSS apa pun seperti properti khusus.
Pseudo-elemen ::column
Elemen pseudo ::column
, yang memungkinkan penerapan serangkaian gaya terbatas ke fragmen yang dihasilkan. Secara khusus, hal ini terbatas pada gaya yang tidak
memengaruhi tata letak, sehingga dapat diterapkan setelah tata letak.
::scroll-button()
elemen pseudo
Mengizinkan pembuatan tombol scroll interaktif sebagai pseudo-elemen. Contoh:
.scroller {
overflow: auto;
}
.scroller::scroll-button(inline-start) {
content: "<";
}
.scroller::scroll-button(inline-end) {
content: ">";
}
Tombol ini harus dapat difokuskan, berperilaku seperti tombol (termasuk gaya UA-nya).
Saat diaktifkan, scroll harus dilakukan ke arah tertentu dengan jumlah tertentu.
Jika tidak dapat men-scroll ke arah tersebut, tombol harus dinonaktifkan
(dan diberi gaya dengan :disabled
), jika tidak, tombol akan diaktifkan (dan diberi gaya dengan
:enabled
). Pemilih memungkinkan Anda menentukan tombol dalam empat arah logis:
block-start
, block-end
, inline-start
, inline-end
; serta empat
arah fisik: up
, down
, left
, right
.
::scroll-marker
dan ::scroll-marker-group
Menambahkan ::scroll-marker
dan ::scroll-marker-group
untuk penampung scroll.
Elemen pseudo ini memungkinkan Anda membuat kumpulan penanda yang dapat difokuskan untuk semua
item terkait dalam penampung scroll.
Gaya elemen pseudo bertingkat
Mengaktifkan gaya pseudo-elemen yang disusun bertingkat di dalam pseudo-elemen lainnya.
Sejauh ini, dukungan ditentukan untuk: ::before::marker
dan ::after::marker
dengan
::column::scroll-marker
didukung pada masa mendatang.
Partisi histori link :visited
Untuk menghilangkan kebocoran histori penjelajahan pengguna, elemen anchor diberi gaya sebagai
:visited
hanya jika telah diklik dari situs dan origin frame
tingkat teratas ini sebelumnya. Dengan hanya menata gaya link yang telah diklik di situs dan
bingkai ini sebelumnya, banyak serangan side-channel yang telah dikembangkan untuk mendapatkan
informasi gaya link :visited
kini tidak berlaku lagi, karena tidak lagi memberikan
informasi baru tentang pengguna kepada situs.
Ada pengecualian untuk link mandiri, yaitu link ke halaman situs sendiri dapat
diberi gaya sebagai :visited
meskipun belum pernah diklik di situs dan origin frame
tingkat teratas yang tepat ini sebelumnya. Pengecualian ini hanya diaktifkan di
frame atau subframe tingkat atas yang memiliki origin yang sama dengan frame
tingkat atas. Manfaat privasi tetap tercapai karena situs sudah mengetahui subhalaman mana yang telah dikunjungi pengguna, sehingga tidak ada informasi baru yang terekspos. Ini adalah
pengecualian yang diminta komunitas untuk meningkatkan pengalaman pengguna.
Notasi fungsi progres interpolasi: Fungsi *progress()
CSS
Notasi fungsional progress()
, media-progress()
, dan container-progress()
mewakili jarak proporsional dari nilai tertentu (nilai
progres) dari satu nilai (nilai awal progres) ke nilai lain (nilai
akhir progres). Fungsi ini memungkinkan gambar rasio progres dari fungsi matematika, fitur
media, dan fitur penampung.
Variabel safe-area-max-inset-
*
Selain variabel lingkungan safe-area-inset
, Chrome kini juga
mendukung varian max-area-safe-inset-
* dari variabel ini. Tidak seperti inset
dinamis, inset maksimum tidak berubah dan mewakili inset area
aman maksimum.
Nilai ini diperlukan saat membuat pengalaman web dari ujung ke ujung yang berperforma baik.
Web API
Menambahkan dukungan MediaStreamTrack
ke Web Speech API
Menambahkan dukungan MediaStreamTrack
ke Web Speech API. Web Speech API adalah
API standar web yang memungkinkan developer menggabungkan pengenalan dan
sintesis ucapan ke dalam halaman web mereka. Saat ini, Web Speech API menggunakan mikrofon
default pengguna sebagai input audio. Dukungan MediaStreamTrack memungkinkan situs
menggunakan Web Speech API untuk memberi teks pada sumber audio lainnya, termasuk trek
audio jarak jauh.
Partisi URL Blob: Pengambilan dan navigasi
Sebagai kelanjutan dari Partisi Penyimpanan, fitur ini menerapkan partisi akses URL Blob menurut Kunci Penyimpanan (situs tingkat teratas, origin frame, dan boolean has-cross-site-ancestor), kecuali navigasi tingkat teratas yang akan tetap dipartisi hanya menurut origin frame.
CSP require-sri-for
untuk skrip
Perintah require-sri-for
memberi Anda kemampuan untuk menyatakan bahwa setiap
resource dari jenis tertentu perlu diperiksa integritasnya. Jika resource jenis
tersebut dicoba dimuat tanpa metadata integritas, upaya tersebut akan
gagal dan memicu laporan pelanggaran CSP. Intent ini mencakup nilai "script"
dari perintah ini.
Membuat klien service worker dan mewarisi pengontrol service worker untuk iframe srcdoc
Dokumen konteks srcdoc saat ini bukan klien service worker dan tidak
tercakup oleh service worker induknya. Hal ini menyebabkan beberapa perbedaan
(misalnya, Resource Timing melaporkan URL yang dimuat dokumen ini, tetapi
service worker tidak mencegatnya). Hal ini bertujuan untuk memperbaiki perbedaan tersebut dengan
membuat klien service worker untuk iframe srcdoc
dan membuatnya mewarisi
pengontrol service worker induknya.
Mengirim peristiwa klik ke pointer yang direkam
Jika pointer diambil saat peristiwa pointerup
dikirim, peristiwa
click
akan dikirim ke target yang diambil, bukan ancestor umum terdekat
peristiwa pointerdown
dan pointerup
sesuai spesifikasi Peristiwa UI. Untuk pointer yang tidak diambil, target click
tetap tidak berubah.
Float16Array
Menambahkan array berjenis Float16Array
. Nilai angka dibulatkan ke IEEE fp16 saat
menulis ke instance Float16Array
.
Menyertakan pemicu navigasi ke dalam kunci partisi cache HTTP
Skema kunci cache HTTP Chrome telah diperbarui untuk menyertakan
boolean is-cross-site-main-frame-navigation
guna mengurangi serangan kebocoran
lintas situs yang melibatkan navigasi tingkat teratas. Secara khusus, tindakan ini akan mencegah
serangan lintas situs saat penyerang dapat memulai navigasi tingkat atas ke
halaman tertentu, lalu membuka resource yang diketahui dimuat oleh halaman tersebut
untuk menyimpulkan informasi sensitif melalui waktu pemuatan. Perubahan ini juga meningkatkan
privasi dengan mencegah situs berbahaya menggunakan navigasi untuk menyimpulkan apakah
pengguna telah mengunjungi situs tertentu sebelumnya.
Pencegahan pelacakan HSTS
Mengurangi pelacakan pengguna oleh pihak ketiga melalui cache HSTS.
Fitur ini hanya mengizinkan upgrade HSTS untuk navigasi tingkat atas dan memblokir upgrade HSTS untuk permintaan sub-resource. Tindakan ini membuat situs pihak ketiga tidak dapat menggunakan cache HSTS untuk melacak pengguna di seluruh web.
Perintah Pemanggil: atribut command
dan commandfor
Atribut command
dan commandfor
pada elemen <button>
memungkinkan Anda menetapkan
perilaku ke tombol dengan cara yang lebih mudah diakses dan deklaratif, sekaligus mengurangi
bug dan menyederhanakan jumlah JavaScript yang diperlukan untuk interaktivitas. Tombol
dengan atribut commandfor
dan command
akan—saat diklik, disentuh, atau
diaktifkan dengan penekanan tombol—mengirim CommandEvent
pada elemen yang direferensikan oleh
commandfor
, dengan beberapa perilaku default seperti membuka dialog dan popover.
Tautkan rel="facilitated-payment"
untuk mendukung pembayaran push
Menambahkan dukungan untuk <link rel="facilitated-payment" href="...">
sebagai petunjuk bahwa browser harus memberi tahu klien pembayaran terdaftar tentang pembayaran push yang tertunda.
Properti NavigateEvent
sourceElement
Saat navigasi dimulai oleh Elemen (yaitu, klik link atau pengiriman
formulir), properti sourceElement
di NavigateEvent
akan menampilkan
elemen yang memulai.
Perubahan nama alasan API NotRestoredReasons
NotRestoredReasons
API mengubah beberapa teks alasan agar selaras dengan
nama standar. Developer yang memantau alasan ini mungkin melihat perubahan
teks alasan.
Web Speech API di perangkat
Fitur ini menambahkan dukungan pengenalan ucapan di perangkat ke Web Speech API, sehingga situs dapat memastikan bahwa audio maupun ucapan yang ditranskripsikan tidak dikirim ke layanan pihak ketiga untuk diproses. Situs dapat mengkueri ketersediaan pengenalan ucapan di perangkat untuk bahasa tertentu, meminta pengguna untuk menginstal resource yang diperlukan untuk pengenalan ucapan di perangkat, dan memilih antara pengenalan ucapan di perangkat atau berbasis cloud sesuai kebutuhan.
URL klien Pekerja Layanan mengabaikan perubahan history.pushState
Mengubah properti Client.url
pekerja layanan untuk mengabaikan perubahan URL dokumen
menggunakan history.pushState()
dan API histori serupa lainnya. Properti Client.url
dimaksudkan sebagai URL pembuatan dokumen HTML yang mengabaikan
perubahan tersebut.
Mendukung atribut rel
dan relList
untuk SVGAElement
Antarmuka SVGAElement di SVG 2.0 memungkinkan manipulasi elemen <a>
yang mirip dengan elemen anchor HTML. Mendukung atribut rel
dan relList
akan meningkatkan keamanan dan privasi bagi developer. Penyelarasan ini dengan elemen anchor HTML
memastikan konsistensi dan kemudahan penggunaan di seluruh teknologi web.
Stempel Waktu untuk Frame yang Dienkode RTC
Fitur ini terdiri dari mengekspos ke Web beberapa stempel waktu yang ada dalam frame yang dienkode WebRTC yang dikirim melalui RTCPeerConnection. Stempel waktu yang dipermasalahkan adalah:
- Stempel waktu pengambilan: stempel waktu saat frame pertama kali diambil
- Stempel waktu diterima: stempel waktu saat frame diterima
Memperbarui ProgressEvent
untuk menggunakan jenis ganda untuk 'dimuat' dan 'total'
ProgressEvent
memiliki atribut loaded
dan total
yang menunjukkan progres,
dan jenisnya sekarang adalah unsigned long long
. Dengan fitur ini, jenis untuk
kedua atribut ini diubah menjadi double
, yang memberi developer
kontrol lebih besar atas nilai. Misalnya, developer kini dapat membuat
ProgressEvent dengan total
1 dan loaded
meningkat dari 0 menjadi 1
secara bertahap. Hal ini selaras dengan perilaku default elemen HTML <progress>
jika atribut maksimum dihilangkan.
fetchLater
API
fetchLater()
API adalah JavaScript API untuk meminta pengambilan yang ditangguhkan,
terutama berguna untuk beaconing yang lebih andal di akhir masa aktif halaman.
Setelah dipanggil dalam dokumen, permintaan yang ditangguhkan akan diantrekan oleh browser dalam
status TERTUNDA, dan akan dipanggil oleh kondisi berikut yang paling awal:
Dokumen dihancurkan. Setelah waktu yang ditentukan pengguna. Untuk alasan privasi, semua permintaan yang tertunda akan dihapus saat dokumen memasuki bfcache, berapa pun waktu yang tersisa. Browser memutuskan bahwa sudah waktunya untuk mengirimnya.
API menampilkan FetchLaterResult
yang berisi kolom boolean activated
yang dapat diperbarui untuk mengetahui apakah permintaan yang ditangguhkan telah dikirim atau
tidak. Setelah berhasil dikirim, seluruh respons akan diabaikan oleh browser,
termasuk isi dan header.
Perhatikan bahwa dari sudut pandang pengguna API, waktu pengiriman yang tepat tidak diketahui.
Uji coba origin baru
Di Chrome 135, Anda dapat memilih untuk mengikuti uji coba origin baru berikut.
Pemanggil Minat
Fitur ini menambahkan atribut interesttarget
ke elemen <button>
dan <a>
. Atribut interesttarget
menambahkan perilaku "minat" ke elemen, sehingga saat pengguna "menunjukkan minat" pada elemen, tindakan akan dipicu pada elemen target. Tindakan dapat mencakup hal-hal seperti menampilkan
popover. Agen pengguna akan menangani deteksi saat pengguna "menunjukkan minat" pada
elemen, menggunakan metode seperti mengarahkan kursor ke elemen dengan mouse, menekan
hotkey khusus pada keyboard, atau menekan lama elemen pada layar sentuh.
Saat minat ditampilkan atau hilang, InterestEvent
akan diaktifkan pada target,
yang memiliki tindakan default dalam kasus popover—menampilkan dan menyembunyikan
popover.
Integritas Berbasis Tanda Tangan
Fitur ini memberi developer web mekanisme untuk memverifikasi asal resource yang mereka andalkan, sehingga menciptakan fondasi teknis untuk kepercayaan pada dependensi situs. Singkatnya: server dapat menandatangani respons dengan pasangan kunci Ed25519, dan developer web dapat mewajibkan agen pengguna untuk memverifikasi tanda tangan menggunakan kunci publik tertentu. Hal ini menawarkan tambahan yang berguna untuk pemeriksaan berbasis URL yang ditawarkan oleh Kebijakan Keamanan Konten di satu sisi, dan pemeriksaan berbasis konten Integrity Subresource di sisi lain.
Penghentian dan penghapusan
Versi Chrome ini memperkenalkan penghentian penggunaan dan penghapusan yang tercantum di bawah. Buka ChromeStatus.com untuk melihat daftar penghentian penggunaan yang direncanakan, penghentian penggunaan saat ini, dan penghapusan sebelumnya.
Rilis Chrome ini tidak lagi menggunakan satu fitur.
Menghentikan penggunaan pengambil Intl Locale Info
Intl Locale Info API adalah proposal TC39 ECMAScript Tahap 3 untuk meningkatkan objek Intl.Locale
dengan mengekspos informasi Lokalitas, seperti data minggu (hari pertama dalam seminggu, hari pertama akhir pekan, hari terakhir akhir pekan, hari minimum dalam minggu pertama), dan siklus jam arah teks yang digunakan di lokalitas. Chrome meluncurkan
penerapan di Chrome 99, tetapi proposalnya berubah untuk memindahkan beberapa
pengambil ke fungsi. Kita perlu menghapus pengambil yang tidak digunakan lagi dan meluncurkan kembali
fungsi yang diganti namanya.
Rilis Chrome ini menghapus tiga fitur.
Menghapus metode navigator.xr.supportsSession
yang tidak digunakan lagi
navigator.xr.supportsSession
diganti dalam spesifikasi WebXR dengan
metode navigator.xr.isSessionSupported
pada September 2019 setelah menerima
masukan tentang bentuk API dari TAG. Sejak itu, API ini telah ditandai sebagai tidak digunakan lagi di
Chrome, sehingga menghasilkan peringatan konsol yang mengalihkan developer ke
API yang telah diperbarui. Penggunaan panggilan ini sangat rendah, dan semua framework utama yang
digunakan untuk mem-build konten WebXR telah dikonfirmasi telah diupdate untuk menggunakan
panggilan yang lebih baru.
Menghapus properti NavigateEvent
canTransition
Di Chrome 108, metode transitionWhile()
dan properti canTransition
NavigateEvent
diganti dengan metode intercept()
dan properti canIntercept
baru. Pada saat itu, metode transitionWhile()
dihapus. Namun, kita lupa menghapus properti canTransition
: sebagai gantinya, kita
meninggalkannya sebagai alias untuk canIntercept
. Di Chrome 135, kami memperbaikinya
dan menghapus canTransition
. Setiap penggunaan canTransition
dapat diganti dengan
canIntercept
, tanpa perubahan perilaku.
Menghapus batas WebGPU maxInterStageShaderComponents
Batas maxInterStageShaderComponents
dihapus karena kombinasi
faktor:
- Redundansi dengan
maxInterStageShaderVariables
: Batas ini sudah memiliki tujuan yang serupa, yaitu mengontrol jumlah data yang diteruskan di antara tahap shader. - Perbedaan Kecil: Meskipun ada sedikit perbedaan dalam cara penghitungan kedua
batas tersebut, perbedaan ini bersifat kecil dan dapat dikelola secara efektif
dalam
maxInterStageShaderVariables limit
. - Penyederhanaan: Menghapus
maxInterStageShaderComponents
akan menyederhanakan antarmuka shader dan mengurangi kompleksitas bagi developer. Alih-alih mengelola dua batas terpisah (yang keduanya berlaku secara bersamaan, tetapi dengan perbedaan halus), mereka dapat berfokus padamaxInterStageShaderVariables
yang lebih tepat namanya dan komprehensif.