Chrome 119 beta menghadirkan sintaksis warna relatif CSS, class semu baru, dan banyak lagi.
Kecuali jika dinyatakan lain, perubahan yang dijelaskan berlaku pada rilis saluran beta Chrome 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 119 masih dalam versi beta mulai 4 Oktober 2023. Anda dapat mendownload aplikasi terbaru di Google.com untuk desktop atau di Google Play Store di Android.
CSS
Rilis ini menambahkan empat fitur CSS baru.
:validitas pengguna dan :kelas semu CSS yang tidak valid bagi pengguna
Class semu :user-invalid
dan :user-valid
masing-masing mewakili elemen dengan input yang salah atau benar, tetapi hanya setelah pengguna berinteraksi secara signifikan dengan elemen tersebut. Hal ini mirip dengan :valid
dan :invalid
, tetapi dengan batasan tambahan, class semu ini hanya cocok setelah pengguna berinteraksi dengan elemen.
Sintaksis Warna Relatif CSS (RCS)
Sintaksis warna relatif memungkinkan developer menentukan warna dengan memodifikasi parameter warna lain.
Misalnya: oklab(from magenta calc(l * 0.8) a b);
menghasilkan oklab magenta yang 80% lebih terang.
Nilai kotak geometri klip jalur CSS
Properti clip-path
CSS kini mendukung nilai <geometry-box>
untuk mengontrol kotak referensi klip, sehingga clip-path
lebih mudah digunakan. Nilai kotak ini dapat digunakan bersama bentuk dasar (misalnya, clip-path: circle(50%) margin-box
), atau dapat digunakan sendiri untuk memotong ke kotak yang ditentukan (misalnya, clip-path: content-box
).
Nilai xywh() dan rect() jalur klip CSS
Chrome kini mendukung nilai xywh()
dan rect()
dari properti clip-path
, yang mempermudah penentuan klip persegi panjang atau membulat persegi panjang.
Web API
Batas atas atribut Cookie Expires/Max-Age untuk penyimpanan sebelumnya
Sejak Chrome 104 yang baru dibuat atau cookie yang diperbarui dengan tanggal habis masa berlaku, tanggal tersebut dibatasi tidak lebih dari 400 hari ke depan. Batas yang sama ini sekarang akan diterapkan secara surut pada cookie yang sudah ada di penyimpanan. Tanggal habis masa berlaku cookie tersebut akan dibatasi tidak lebih dari 400 hari setelah pertama kali Chrome 119 atau yang lebih baru dimulai dan melakukan migrasi database satu kali. Dampak perubahan ini tidak akan dirasakan oleh pengguna hingga setidaknya 400 hari setelah Chrome 119 dirilis, dan hanya untuk cookie yang sudah ada dan belum diupdate dalam periode tersebut.
DisplayMediaStreamOptions monitorTypeSurfaces
Saat getDisplayMedia()
dipanggil, browser akan menawarkan pilihan platform tampilan kepada pengguna: tab, jendela, atau monitor. Dengan menggunakan opsi monitorTypeSurfaces
, aplikasi web kini dapat memberikan petunjuk ke browser jika lebih suka menyertakan platform tampilan yang jenisnya dipantau di antara pilihan yang ditawarkan kepada pengguna.
Update fungsi Fenced Frames
Chrome 119 menyertakan peningkatan berikut untuk Fenced Frames.
Ada opsi format tambahan untuk makro ukuran iklan Protected Audience di Protected Audience API dalam Privacy Sandbox. Fitur keikutsertaan memungkinkan Anda memasukkan ukuran iklan yang memenangkan lelang ke dalam URL iklan, misalnya:
https://ad.com?width={/%AD_WIDTH%}&height={/%AD_HEIGHT%}
Agar lebih konsisten dengan jenis makro lain di Protected Audience, seperti yang digunakan oleh deprecatedReplaceInURN
dan registerAdMacro
, di Chrome 119 kami menambahkan kemampuan untuk menggunakan ${AD_WIDTH}
dan ${AD_HEIGHT}
sebagai format untuk makro selain format saat ini.
Suar otomatis kini akan mengirim ke semua URL yang terdaftar. Sebelumnya, hanya tujuan yang ditentukan saat memanggil setReportEventDataForAutomaticBeacons()
yang akan menerima beacon otomatis, meskipun tujuan tersebut memanggil registerAdBeacon()
untuk "reserved.top_navigation"
dalam workletnya. Sekarang, tujuan apa pun yang memanggil registerAdBeacon()
untuk "reserved.top_navigation"
akan mendapatkan beacon otomatis, tetapi hanya tujuan yang ditentukan dalam setReportEventDataForAutomaticBeacons()
yang akan mendapatkan data beacon otomatis beserta beacon. Parameter "once"
di setReportEventDataForAutomaticBeacons()
kini akan menentukan apakah data dikirim sekali, bukan menentukan apakah seluruh beacon dikirim satu kali.
Margin scroll Pengamat Persimpangan
Properti scrollMargin
Intersection Observer memungkinkan developer mengamati target di dalam penampung scroll bertingkat yang saat ini terpotong oleh penampung scroll. Hal ini dilakukan dengan meluaskan persegi panjang clipping container dengan scrollMargin
saat menghitung persimpangan.
Penampung scroll yang dapat difokuskan keyboard
Fitur ini meningkatkan aksesibilitas dengan membuat penampung scroll dapat difokuskan menggunakan navigasi fokus berurutan. Sebelumnya, tombol tab tidak memfokuskan scroller kecuali jika tabIndex ditetapkan secara eksplisit ke 0 atau lebih. Dengan membuat scroller yang dapat difokuskan secara default, pengguna yang tidak dapat (atau tidak ingin) menggunakan mouse akan dapat memfokuskan konten yang terpotong menggunakan tombol tab dan panah pada keyboard. Perilaku ini hanya diaktifkan jika scroller tidak berisi turunan yang dapat difokuskan keyboard.
Pembatasan Akses Jaringan Pribadi untuk otomotif
Terapkan (bukan hanya peringatan) pembatasan Akses Jaringan Pribadi di Chrome untuk Android Automotive (jika BuildInfo::is_automotive
). Hal ini termasuk permintaan preflight Akses Jaringan Pribadi untuk subresource, dan Akses Jaringan Pribadi untuk Pekerja.
Membaca atribut perangkat Chrome
Device Attributes Web API adalah subset dari Managed Device Web API, yang memberi aplikasi web kemampuan untuk mengkueri informasi perangkat. Misalnya, ID perangkat, nomor seri, dan lokasi.
Mengganti markup tidak berpenutup pada nama target menjadi _blank
Perubahan ini menggantikan nama target yang dapat dinavigasi (yang biasanya ditetapkan oleh atribut target) menjadi _blank
, jika berisi markup yang menjuntai (misalnya, \n
dan <
). Yang memperbaiki pengabaian dalam mitigasi injeksi markup yang tidak berfungsi.
Header Client Hints Fitur media preferensi pengguna Sec-CH-Prefers-Reduced-Transparency
Header fitur media preferensi pengguna Client Hints menentukan kumpulan header HTTP Client Hints di sekitar fitur media preferensi pengguna seperti yang ditetapkan oleh Kueri Media Level 5. Jika digunakan sebagai Petunjuk Klien Penting, header ini memungkinkan server untuk membuat pilihan cerdas terkait, misalnya, penyisipan CSS. Sec-CH-Prefers-Reduced-Transparency
mencerminkan preferensi prefers-reduced-transparency
pengguna, dan tersedia mulai Chrome 119.
Karakter tanda baca host URL yang sesuai standar
Buat penanganan Chrome terhadap karakter tanda baca host URL sesuai dengan standar URL. Contoh:
Sebelum:
> const url = new URL("http://exa(mple.com;");
> url.href
'http://exa%28mple.com/'
(
adalah karakter yang dilarang, tetapi Chrome mengizinkannya secara keliru.
Sesudah:
> const url = new URL("http://exa(mple.com;");
> => throws TypeError: Invalid URL.
Kecepatan bit AudioEncoder WebCodecs
Beberapa codec audio mendukung penentuan mode kecepatan bit encoder audio. Fitur ini menambahkan flag "bitrateMode"
dengan nilai default "variable"
ke AudioEncoderConfig
WebCodec, yang mencerminkan opsi konfigurasi dan default yang sudah ada untuk VideoEncoderConfig
.
Tanda ini akan memungkinkan developer memilih antara encoding audio dengan kecepatan bit variabel atau kecepatan bit konstan. Implementasi encoder codec tertentu mungkin memiliki terminologi yang sedikit berbeda (misalnya CBR
vs VBR
untuk Opus), tetapi semuanya harus dipetakan ke konsep umum "konstan" versus "variabel" kecepatan bit.
Kedua opsi tersebut memiliki pengaruh berikut:
- variabel: memungkinkan encoder audio meningkatkan atau menurunkan kecepatan bitnya sesuai dengan konten audio yang dienkode, untuk mempertahankan bandwidth/ukuran biner, sambil tetap mempertahankan kualitas target. Misalnya, encoder dapat menurunkan kecepatan bit saat mengenkode senyap, dan kembali ke kecepatan bit penuh saat mengenkode ucapan.
- konstanta : memaksa encoder audio untuk mempertahankan kecepatan bit yang sama, apa pun konten audionya. Hal ini dapat berguna ketika konsumsi bandwidth yang dapat diprediksi lebih baik.
Mulai Chrome 119, tanda ini akan memengaruhi dua codec di Chromium: Opus dan AAC.
Enkapsulasi kunci X25519Kyber768 untuk TLS
Melindungi traffic TLS Chrome saat ini terhadap kriptoanalisis kuantum mendatang dengan men-deploy algoritma perjanjian kunci yang tahan kuantum Kyber768. Ini adalah perjanjian kunci X25519 + Kyber768 hibrida berdasarkan standar IETF. Spesifikasi dan peluncuran ini berada di luar cakupan W3C. Perjanjian kunci ini akan diluncurkan sebagai penyandian TLS, dan harus transparan bagi pengguna.
Uji coba origin sedang berlangsung
Di Chrome 119, Anda dapat ikut serta dalam uji coba origin baru berikut.
Membuka pop-up sebagai jendela layar penuh
Uji coba origin baru ini menambahkan parameter windowFeatures fullscreen
ke window.open()
JavaScript API. Hal ini memungkinkan pemanggil untuk membuka pop-up secara langsung ke layar penuh pada tampilan yang akan berisi pop-up (berdasarkan screenX dan screenY). Dengan demikian, developer tidak perlu mentransisikan pop-up ke layar penuh secara manual, yang dapat memerlukan sinyal aktivasi pengguna baru.
Penghentian penggunaan dan penghapusan
Versi Chrome ini memperkenalkan penghentian penggunaan dan penghapusan yang tercantum di bawah. Kunjungi ChromeStatus.com untuk melihat daftar penghentian yang direncanakan, penghentian penggunaan saat ini, dan penghapusan sebelumnya.
Rilis Chrome ini menghapus empat fitur.
Hapus Web SQL
Kami sebelumnya telah mengumumkan penghentian dan penghapusan Web SQL. Fitur ini sepenuhnya dihapus mulai Chrome 119. Uji coba origin terbalik memungkinkan developer terus menggunakan WebSQL hingga Chrome 123.
Menghapus Sanitizer API
Sanitizer API bertujuan membuat pembersih HTML dalam platform yang mudah digunakan, selalu aman, dan dikelola browser. Chrome meluncurkan versi awal pada Chrome 105, berdasarkan draf spesifikasi yang berlaku saat itu. Namun, setelah diadakan diskusi lanjutan, bentuk API yang diusulkan berubah secara substansial.
Agar dapat terus menggunakan API yang ada saat ini, kami menghapus implementasi saat ini. Kami berharap dapat mengimplementasikan kembali Sanitizer API saat spesifikasi yang diusulkan kembali stabil.
Hapus data: URL di SVGUseElement
Menetapkan data: URL
di SVGUseElement
dapat menyebabkan XSS. Penetapan ini juga menyebabkan pengabaian Trusted Types. Oleh karena itu, kami berencana menghentikan penggunaan dan menghapus dukungan untuk model ini.
Menghapus atribut shadowroot
non-standar untuk shadow DOM deklaratif
Atribut shadowrootmode
pelacakan standar, yang mengaktifkan Shadow DOM deklaratif, diluncurkan di Chrome 111. Atribut shadowroot
non-standar lama akan dihapus di Chrome 119. Ada jalur migrasi yang mudah: ganti shadowroot
dengan shadowrootmode
.