Chrome 146 beta

Xuất bản: Ngày 11 tháng 2 năm 2026

Trừ phi có ghi chú khác, những thay đổi này áp dụng cho bản phát hành mới nhất của Kênh thử nghiệm Chrome cho Android, ChromeOS, Linux, macOS và Windows. Để biết thêm thông tin về các tính năng này, hãy xem các đường liên kết được cung cấp hoặc danh sách trên ChromeStatus.com. Tải phiên bản mới nhất xuống từ Google.com cho máy tính hoặc từ Cửa hàng Google Play trên Android.

CSS và giao diện người dùng

Ảnh động kích hoạt bằng thao tác cuộn

Tính năng này bổ sung chế độ kiểm soát ảnh động dựa trên vị trí cuộn, chẳng hạn như phát, tạm dừng và đặt lại ảnh động.

Một mẫu phổ biến trên các trang web là bắt đầu một ảnh động khi đạt đến một vị trí cuộn. Các nhà phát triển thường dùng JavaScript để phát hiện theo cách thủ công thời điểm một phần tử nằm trong khung hiển thị của vùng chứa cuộn và bắt đầu một ảnh động tương ứng (ví dụ: trượt phần tử đó vào khung hiển thị). Nhiều trường hợp sử dụng trong số này dựa vào thông tin có thể được cung cấp một cách khai báo. Tính năng này cho phép tác giả tạo các hoạt động tương tác này một cách khai báo thông qua CSS, cho phép tác nhân người dùng chuyển việc xử lý hoạt động tương tác này sang một luồng worker. API này cũng bao gồm các giao diện JavaScript mở rộng tính năng này cho ảnh động trên web ngoài ảnh động CSS.

Tìm hiểu thêm trong bài viết Ảnh động kích hoạt bằng thao tác cuộn CSS sắp ra mắt!.

Thuộc tính trigger-scope

Thuộc tính trigger-scope cho phép nhà phát triển giới hạn tên của các sự kiện kích hoạt ảnh động do thuộc tính trigger-instantiating khai báo.

Các thuộc tính khởi tạo sự kiện kích hoạt, chẳng hạn như timeline-trigger, khai báo các tên mà thuộc tính animation-trigger có thể tham chiếu để đính kèm ảnh động vào sự kiện kích hoạt. Tuy nhiên, theo mặc định, các tên này là tên toàn cục (tương tự như anchor-name). Tác giả thường cần giới hạn khả năng hiển thị của các tên này để tách biệt các tương tác kích hoạt hoạt ảnh.

Phạm vi có tên "scroll" trên dòng thời gian

Tính năng này mở rộng tập hợp các dải ô được đặt tên cho dòng thời gian của khung hiển thị bằng cách thêm dải ô scroll.

Scroll-Driven Animations API (API Ảnh động dựa trên thao tác cuộn) đã giới thiệu ViewTimelines và các dải ô có tên đề cập đến các phần của ViewTimeline xác định phạm vi của ảnh động.

Tuy nhiên, tất cả các dải ô có tên được cung cấp đều bị giới hạn ở phần ViewTimeline nơi chủ thể của dải ô đó xuất hiện. Giờ đây, tác giả có thể tham khảo toàn bộ phạm vi của vùng chứa có thể di chuyển bên dưới dòng thời gian. Tính năng này sẽ thêm một dải ô có tên scroll vào nhóm hiện có (entry, exit, cover, contain).

Hỗ trợ hangingeach-line cho thuộc tính text-indent

Hai từ khoá không bắt buộc cho thuộc tính text-indent giúp mở rộng khả năng và tính hữu dụng của thuộc tính này.

Từ khoá hanging thay đổi khoảng thụt lề thành thụt lề từ dòng thứ hai, tức là tất cả các dòng đều được thụt lề ngoại trừ dòng đầu tiên.

Từ khoá each-line khiến chế độ thụt lề ảnh hưởng không chỉ đến dòng đầu tiên mà còn đến từng dòng sau khi ngắt dòng bắt buộc.

Web API

Navigation API: thêm trình xử lý sau khi xác nhận từ giai đoạn trước khi xác nhận

Một điểm cải tiến nhỏ về công thái học cho phép đăng ký trình xử lý sau khi xác nhận trong khi gọi trình xử lý trước khi xác nhận.

Trước thay đổi này, khi chặn các thao tác điều hướng bằng sự kiện navigate, các trình xử lý thông thường trước khi xác nhận và sau khi xác nhận sẽ được truyền riêng biệt.

Điều này hoạt động hiệu quả khi chỉ có một hoặc một trong hai, nhưng có thể hơi vụng về khi quy trình bao gồm một precommitHandler dẫn đến một trình xử lý sau khi xác nhận.

Điền sẵn targetURL trong quá trình xử lý tệp

Giờ đây, việc triển khai Launch Handler (Trình xử lý hoạt động khởi chạy) đảm bảo rằng LaunchParams.targetURL được điền sẵn khi PWA khởi chạy thông qua tính năng Xử lý tệp. Trước đây, thuộc tính này có giá trị rỗng khi một tệp khởi chạy được chuyển hướng đến một cửa sổ hiện có. Thay đổi này đảm bảo rằng URL trong trường action của tệp kê khai của nhà phát triển (cùng một URL mà tài liệu hiện phải tải) có sẵn cho người dùng launchQueue.

WebGPU: Kết cấu và mẫu cho phép

Thêm một tính năng ngôn ngữ vào WGSL, texture_and_sampler_let, cho phép bạn lưu trữ các đối tượng hoạ tiết và đối tượng lấy mẫu vào một khai báo let trong WGSL.

Chế độ tương thích WebGPU

Thêm một tập hợp con được hạn chế nhẹ của API WebGPU mà có thể chạy các API đồ hoạ cũ hơn, chẳng hạn như OpenGL và Direct3D11. Bằng cách chọn sử dụng chế độ này và tuân thủ các hạn chế của chế độ, nhà phát triển có thể mở rộng phạm vi tiếp cận của các ứng dụng WebGPU đến nhiều thiết bị cũ không có các API đồ hoạ hiện đại, rõ ràng mà WebGPU cốt lõi yêu cầu. Đối với các ứng dụng đơn giản, thay đổi duy nhất cần thiết là chỉ định khả năng tương thích featureLevel khi gọi requestAdapter. Đối với các ứng dụng nâng cao hơn, có thể cần phải sửa đổi một số thành phần để đáp ứng các quy định hạn chế của chế độ này. Vì Chế độ tương thích là một tập hợp con, nên các ứng dụng kết quả cũng là các ứng dụng WebGPU Core hợp lệ và chạy ngay cả trên những tác nhân người dùng không hỗ trợ Chế độ tương thích.

WebGPU: Tệp đính kèm tạm thời

TRANSIENT_ATTACHMENT GPUTextureUsage mới cho phép nhà phát triển tạo tệp đính kèm giúp các thao tác truyền kết xuất nằm trong bộ nhớ của ô, tránh lưu lượng truy cập VRAM và có thể tránh việc phân bổ VRAM cho các hoạ tiết.

Intl.Locale.prototype.variants

Thêm Intl.Locale.prototype.variants, đồng thời chấp nhận các biến thể trong gói lựa chọn trong hàm khởi tạo Intl.Locale.

Sắp xếp theo trình tự trình lặp

Triển khai đề xuất TC39 để tạo các trình lặp bằng cách sắp xếp các trình lặp hiện có theo trình tự. Điều này giới thiệu Iterator.concat(...items).

meta name="text-scale"

Làm cho cỡ chữ mặc định của phần tử gốc tăng tỷ lệ tương ứng với cả chế độ cài đặt tỷ lệ văn bản của hệ điều hành và trình duyệt. Điều này cho phép những trang tuân theo các phương pháp hay nhất về đơn vị tương đối của phông chữ (tức là sử dụng remem cho cỡ chữ và các phần tử trang thay đổi theo lựa chọn ưu tiên về cỡ chữ của người dùng) tuân theo chế độ cài đặt tỷ lệ văn bản ở cấp hệ điều hành của người dùng. Điều này cũng khiến trình duyệt vô hiệu hoá các cơ chế hiện có dựa trên trình duyệt (tức là tính năng thu phóng toàn trang trên Windows) và các phương pháp phỏng đoán (tức là tính năng tự động điều chỉnh kích thước văn bản trên thiết bị di động). Giờ đây, nhà phát triển web có thể báo hiệu cho trình duyệt rằng trang được tạo theo cách (tức là bằng remem) có thể điều chỉnh quy mô tốt theo nhiều lựa chọn ưu tiên về kích thước phông chữ do người dùng chọn. Tương tự như env(preferred-text-scale), cung cấp cho tác giả cách truy cập vào tỷ lệ văn bản, API này mở rộng bằng cách cho phép điều chỉnh tỷ lệ thông qua cỡ chữ mặc định của phần tử gốc và chọn không sử dụng tính năng tự động điều chỉnh tỷ lệ văn bản.

Giữ lại các giá trị dropEffect từ sự kiện dragover đến sự kiện drop

API Kéo và thả HTML5 cho phép các ứng dụng web xử lý các thao tác kéo và thả thông qua một loạt sự kiện: dragstart, dragenter, dragover, dragleave, dropdragend. Trong các sự kiện này, thuộc tính dataTransfer.dropEffect cho biết thao tác (sao chép, di chuyển, liên kết hoặc không có thao tác nào) cần thực hiện.

Theo quy cách HTML5, giá trị dropEffect mà các ứng dụng web đặt trong sự kiện dragover gần đây nhất sẽ được giữ lại và có trong sự kiện drop tiếp theo.

Tuy nhiên, các trình duyệt dựa trên Chromium đã ghi đè giá trị dropEffect của ứng dụng web bằng chính thao tác đã thương lượng của trình duyệt trước khi sự kiện drop kích hoạt, điều này đã vi phạm việc tuân thủ quy cách và hạn chế quyền kiểm soát của nhà phát triển đối với hành vi kéo và thả.

Giữ lại tham số loại MIME của URL dữ liệu

Duy trì các tham số loại MIME (ví dụ: bộ ký tự, ranh giới) trong tiêu đề URL Content-Type dữ liệu theo Tiêu chuẩn tìm nạp.

Sanitizer API

Sanitizer API cung cấp một Sanitizer API HTML dễ sử dụng và an toàn theo mặc định mà nhà phát triển có thể dùng để xoá nội dung có thể thực thi tập lệnh khỏi nội dung HTML tuỳ ý do người dùng cung cấp. Mục tiêu là giúp bạn dễ dàng tạo các ứng dụng web không có XSS.

Bản dùng thử theo nguyên gốc mới

Trong Chrome 146, bạn có thể chọn sử dụng các thử nghiệm nguồn gốc mới này.

WebNN

WebNN hướng đến việc cho phép các ứng dụng và khung web tận dụng các dịch vụ hệ điều hành gốc cho hoạt động học máy và các chức năng phần cứng cơ bản có trên máy tính của người dùng để triển khai trải nghiệm học máy nhất quán, hiệu quả và đáng tin cậy trên web.

Đăng ký dùng thử WebNN.