Chrome 145 Beta

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

Trừ phi có ghi chú khác, những thay đổi sau đây sẽ áp dụng cho bản phát hành kênh beta mới nhất của Chrome cho Android, ChromeOS, Linux, macOS và Windows. Tìm hiểu thêm về các tính năng được liệt kê tại đây thông qua các đường liên kết được cung cấp hoặc trong danh sách trên ChromeStatus.com. Chrome đang ở giai đoạn thử nghiệm beta kể từ ngày 14 tháng 1 năm 2026. Bạn có thể tải phiên bản mới nhất xuống trên Google.com cho máy tính hoặc trên Cửa hàng Google Play cho Android.

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

Hỗ trợ thuộc tính CSS text-justify

Nhà phát triển có thể kiểm soát cách văn bản được căn chỉnh khi text-align: justify được áp dụng bằng cách sử dụng thuộc tính text-justify. Ví dụ: buộc căn đều bằng cách mở rộng khoảng cách giữa các ký tự, ngay cả trong văn bản tiếng Anh.

Tinh chỉnh quá trình tính toán cạnh bóng border-radius cho các giá trị border-radius cao

Nhờ điểm cải tiến này, bóng và ranh giới của phần tử bị cắt trên các phần tử gần như hình tròn (trong đó border-radius gần bằng 50%) sẽ khớp chính xác với đường viền trực quan của cạnh cong.

Điều này giúp hiển thị nhất quán hơn các hình dạng tròn phức tạp, loại bỏ sự khác biệt về hình ảnh đối với các giá trị bán kính cao. Hệ số điều chỉnh bán kính đường viền (border-radius) (đảm bảo các góc xuất hiện sắc nét đối với bán kính nhỏ) hiện được giảm dần khi giá trị bán kính tiến đến 50%.

Điều này cũng áp dụng cho các đường viền không tròn (sử dụng corner-shape), hiện sử dụng cùng một cơ chế điều chỉnh bán kính.

Ngắt dòng cột cho bố cục nhiều cột CSS

Từ Chrome 145, các thuộc tính column-wrapcolumn-height được hỗ trợ trong bố cục nhiều cột. Các thuộc tính này cho phép bạn chuyển các cột sang một hàng mới theo hướng khối.

Trước Chrome 145, nếu chiều cao của vùng chứa nhiều cột bị hạn chế, thì nội dung không vừa với không gian có sẵn sẽ xuất hiện dưới dạng các cột tràn theo hướng nội tuyến. Thao tác này sẽ tạo một thanh cuộn ngang trên web. Với các thuộc tính column-heightcolumn-wrap, bạn có thể đặt chiều cao cho hàng cột và đặt các cột tràn xuất hiện dưới dạng một hàng mới.

Tìm hiểu thêm trong phần Hỗ trợ các cột được xuống dòng trong bố cục nhiều cột.

Hiển thị sự kiện onanimationcancel cho GlobalEventHandlers

CSS Animations Level 1 mở rộng Giao diện GlobalEventsHandler được xác định trong quy cách HTML, khai báo 4 trình xử lý sự kiện mới: onanimationstart, onanimationiteration, onanimationendonanimationcancel.

Trình xử lý sự kiện onanimationcancel bị thiếu trong GlobalEventsHandler IDL và hiện đã được hiển thị.

CSS letter-spacingword-spacing: giá trị phần trăm

Cho phép các giá trị phần trăm cho thuộc tính CSS letter-spacingword-spacing, như được xác định trong quy cách Mô-đun văn bản CSS cấp 4. Giá trị phần trăm được tính tương ứng với chỉ số đo lường nâng cao của ký tự khoảng trắng (U+0020). Điều này giúp nhà phát triển kiểm soát kiểu chữ một cách mạnh mẽ và linh hoạt hơn, đặc biệt là trong các thiết kế thích ứng, trong đó khoảng cách văn bản cần điều chỉnh cho phù hợp với nhiều kích thước khung hiển thị và kích thước phông chữ.

Hộp danh sách có thể tuỳ chỉnh

Tính năng này mở rộng khả năng hỗ trợ lựa chọn có thể tuỳ chỉnh sang chế độ kết xuất hộp danh sách, bao gồm cả lựa chọn đơn và lựa chọn nhiều trong chế độ hộp danh sách.

Chế độ kết xuất hộp danh sách có nghĩa là phần tử <select> được kết xuất trong luồng hoặc trong trang thay vì bằng một nút và cửa sổ bật lên riêng biệt. Chế độ kết xuất hộp danh sách được chọn trên các nền tảng thông qua nhiều thuộc tính hoặc thuộc tính kích thước, chẳng hạn như <select multiple> hoặc <select size=4>. Khi thuộc tính appearance:base-select CSS được áp dụng cho phần tử <select> có các thuộc tính này, phần tử đó sẽ có hành vi kết xuất và nhập liệu được cải thiện.

Tính năng này không hỗ trợ lựa chọn có thể tuỳ chỉnh cho cửa sổ bật lên chọn nhiều, tính năng này sẽ ra mắt sau. Bạn phải đặt các thuộc tính sau để nhận được một cửa sổ bật lên có thể chọn nhiều: <select multiple size=1>.

Bật chế độ kết xuất biểu tượng cảm xúc đơn sắc ở chế độ màu bắt buộc.

Thay đổi này sẽ cập nhật hành vi kết xuất biểu tượng cảm xúc ở Chế độ màu bắt buộc trong Chrome. Trong quá trình phân giải giá trị được tính toán, biểu tượng cảm xúc có giá trị font-variant-emoji được tính toán thành normal hoặc unicode sẽ được kết xuất bằng cách sử dụng các glyph đơn sắc khi có sẵn.

Do đó, Chrome sẽ chặn việc hiển thị biểu tượng cảm xúc có màu, nhờ đó đảm bảo biểu tượng cảm xúc tham gia đầy đủ vào quy trình Chế độ màu bắt buộc và tuân thủ các màu có độ tương phản cao của hệ thống. Hành vi bên ngoài chế độ màu bắt buộc không thay đổi.

Lựa chọn focusVisible trên phương thức focus()

Khi gọi phương thức focus(), giờ đây, nhà phát triển có thể cung cấp một boolean focusVisible trong từ điển FocusOptions. Khi được đặt thành true, vòng tâm điểm sẽ luôn được vẽ xung quanh phần tử mới được lấy làm tâm điểm và sẽ khớp với lớp giả :focus-visible. Khi giá trị là false, vòng tiêu điểm sẽ không được vẽ và :focus-visible sẽ không khớp. Khi bị thiếu, tác nhân người dùng sẽ tự xác định xem có nên vẽ vòng tiêu điểm hay không và lớp giả :focus-visible sẽ khớp cho phù hợp.

Hiệu ứng cuộn quá mức trên các thành phần cuộn không phải gốc

Hiện hiệu ứng cuộn quá mức linh hoạt trên các vùng chứa cuộn không phải là vùng chứa gốc. Khi một phần tử có thể di chuyển lồng nhau đạt đến ranh giới di chuyển, tính năng hỗ trợ thao tác di chuyển quá mức sẽ áp dụng cho phần tử đó thay vì chỉ áp dụng cho trình cuộn gốc. Điều này giúp giảm nhu cầu về các giải pháp thay thế JavaScript tuỳ chỉnh và có thể được kiểm soát theo từng phần tử bằng overscroll-behavior.

Hiện vị trí thực của cửa sổ trên Android

Chrome trên Android hiện báo cáo chính xác vị trí và kích thước cửa sổ trình duyệt bằng window.screenX, window.screenY, window.outerWidthwindow.outerHeight.

Trước đây, Chrome giả định sai rằng tất cả các cửa sổ trình duyệt trên Android đều bắt đầu ở toạ độ (0, 0). Điều này không chính xác đối với các máy tính bảng Android sử dụng chế độ cửa sổ tuỳ ý, khiến các trang web luôn nhận được giá trị 0 khi truy vấn vị trí trên màn hình của cửa sổ bằng window.screenXwindow.screenY (các trường này lưu trữ toạ độ của góc trên cùng bên trái của cửa sổ trong không gian toạ độ vùng làm việc chung).

Ngoài ra, Chrome trên Android đã giả định sai rằng kích thước bên ngoài của cửa sổ trình duyệt bằng với kích thước bên trong của khung hiển thị trang web.

Web API

Trước Chrome 145, NavigationTransition có thuộc tính from, hiển thị URL cũ của thao tác điều hướng. Việc hiển thị to (một NavigationDestination) sẽ hoàn tất việc này. Điều này đặc biệt hữu ích khi sử dụng trình xử lý precommit, vì trong precommit, URL hiện tại chưa chuyển sang đích đến.

WebGPU: Tính năng subgroup_uniformity

Thêm một phạm vi mới vào quy trình phân tích tính đồng nhất và thay đổi những phần của ngôn ngữ được kiểm tra trong mỗi phạm vi để cho phép chức năng nhóm con được coi là đồng nhất trong nhiều trường hợp hơn.

Upsert

Triển khai đề xuất ECMAScript cho Map.prototype.getOrInsert, Map.prototype.getOrInsertComputed, WeakMap.prototype.getOrInsertWeakMap.prototype.getOrInsertComputed.

Các loại InputEvent cho lệnh xoá trên các lựa chọn không thu gọn

Báo cáo các giá trị inputType chính xác cho phím tắt xoá trên văn bản đã chọn. Khi các lệnh xoá như Control+Backspace hoặc Control+Delete được dùng với văn bản đã chọn trong các phần tử có thể chỉnh sửa nội dung, các sự kiện beforeinputinput hiện báo cáo deleteContentBackward hoặc deleteContentForward thay vì deleteWordBackward hoặc deleteWordForward. Điều này giúp nhà phát triển web hiểu đúng về thao tác chỉnh sửa đã xảy ra và triển khai các hành vi chỉnh sửa tuỳ chỉnh, cũng như thao tác huỷ và làm lại đáng tin cậy.

Cho phép người gọi chỉ định một maxAge khi thiết lập cookie bằng Cookie Store API.

Bạn có thể định cấu hình thời gian hết hạn của cookie bằng thuộc tính expires, nhưng maxAge cung cấp một lựa chọn thành ngữ hơn và điều chỉnh Cookie Store API theo các lựa chọn do document.cookie và Tiêu đề HTTP Set-Cookie cung cấp.

Xác nhận thanh toán an toàn: Khoá liên kết với trình duyệt

Thêm một chữ ký mật mã bổ sung vào các câu khẳng định Xác nhận thanh toán an toàn và quy trình tạo thông tin đăng nhập. Khoá riêng tư tương ứng không được đồng bộ hoá trên các thiết bị. Điều này giúp nhà phát triển web đáp ứng các yêu cầu về việc liên kết thiết bị cho các giao dịch thanh toán.

Kích hoạt cố định cho sự kiện clipboardchange

Giờ đây, Chrome yêu cầu người dùng kích hoạt hoặc cấp quyền clipboard-read để kích hoạt các sự kiện clipboardchange, ngăn chặn hành vi giám sát trái phép nội dung trên bảng nhớ tạm. Thay đổi này được xác định trong quy cách Clipboard API.

Hiển thị rtpTimestamp từ khung hình video WebRTC bằng cách sử dụng VideoFrame.metadata()

Thêm một phương thức VideoFrame.metadata() trả về một từ điển chứa trường rtpTimestamp, nếu VideoFrame cơ bản có trường này trong siêu dữ liệu. Nếu không, một từ điển trống sẽ được trả về. Chỉ những khung hình video có nguồn gốc từ các nguồn WebRTC mới có siêu dữ liệu rtpTimestamp được đính kèm.

Cho phép các ứng dụng web hiểu được thời gian hiệu suất hai chế độ

Các ứng dụng web có thể gặp phải tình trạng phân phối hai phương thức trong hiệu suất tải trang do các yếu tố nằm ngoài tầm kiểm soát của ứng dụng. Ví dụ: khi một tác nhân người dùng khởi chạy lần đầu trong trường hợp "khởi động nguội", tác nhân này phải thực hiện nhiều tác vụ khởi tạo tốn kém, cạnh tranh với các tài nguyên hệ thống. Tiện ích trình duyệt cũng có thể ảnh hưởng đến hiệu suất, vì một số tiện ích chạy mã bổ sung trên mọi trang bạn truy cập, làm tăng mức sử dụng CPU và làm chậm thời gian phản hồi. Tương tự, khi máy đang bận với các tác vụ chuyên sâu, các trang web có thể tải chậm hơn.

Trong những trường hợp này, nội dung mà ứng dụng web cố gắng tải sẽ cạnh tranh với các hoạt động khác đang diễn ra trên hệ thống. Điều này khiến bạn khó phát hiện xem các vấn đề về hiệu suất có tồn tại trong chính các ứng dụng web hay không, hoặc do các yếu tố bên ngoài.

Trường confidence mới trên đối tượng PerformanceNavigationTiming cho phép nhà phát triển phân biệt xem thời gian điều hướng có đại diện cho ứng dụng web của họ hay không.

Thêm presentationTimepaintTime vào các mục nhập hiệu suất

Hiển thị paintTimepresentationTime trong thời gian hiển thị phần tử, LCP, khung hình ảnh động dài và thời gian hiển thị.

paintTime có nghĩa là thời điểm giai đoạn kết xuất kết thúc và trình duyệt bắt đầu giai đoạn vẽ. presentationTime có nghĩa là thời gian "các pixel xuất hiện trên màn hình", điều này phần nào được xác định theo cách triển khai. Xem LCP và INP hiện là Baseline Newly available.

Sử dụng pixel CSS trong LayoutShift API

Tính năng này thay đổi dữ liệu phân bổ (prevRectcurrentRect) trong LayoutShift API để được báo cáo bằng pixel CSS thay vì pixel thực. Hành vi hiện tại không nhất quán với các API khác liên quan đến bố cục, tất cả đều sử dụng pixel CSS. Thay đổi này giúp cải thiện tính nhất quán, đơn giản hoá việc sử dụng cho nhà phát triển và phù hợp với các đơn vị dự kiến trong quá trình gỡ lỗi và sử dụng công cụ.

Xin lưu ý rằng điều này không ảnh hưởng đến giá trị chỉ số CLS, nhưng có ảnh hưởng đến các công cụ gỡ lỗi hiển thị ảnh chụp màn hình và hình ảnh của những thay đổi đó.

Thông tin xác thực phiên được liên kết với thiết bị (DBSC)

Một cách để các trang web liên kết một phiên với một thiết bị duy nhất một cách an toàn.

Điều này cho phép các máy chủ có một phiên được liên kết an toàn với một thiết bị. Trình duyệt sẽ định kỳ gia hạn phiên theo yêu cầu của máy chủ, kèm theo bằng chứng về quyền sở hữu khoá riêng tư.

Quyền truy cập mạng cục bộ được chia thành nhiều quyền

Đây là một điểm cải tiến đối với các quy định hạn chế về Quyền truy cập mạng cục bộ (LNA), trong đó chúng tôi tách quyền cần thiết từ một quyền truy cập mạng cục bộ thành hai quyền riêng biệt.

Quyền cũ: local-network-access

Các quyền mới:

  • local-network: cho các yêu cầu LNA đến các IP trong không gian địa chỉ cục bộ.
  • loopback-network: cho các yêu cầu LNA đến các IP trong không gian địa chỉ vòng lặp.

Quyền cũ được giữ lại dưới dạng một bí danh và sẽ tiếp tục hoạt động cho permissions.query và Chính sách về quyền. Các chính sách hiện tại của doanh nghiệp sẽ tiếp tục hoạt động như cũ; các chính sách mới và chi tiết hơn của doanh nghiệp sẽ được bổ sung vào thời điểm sau này.

Origin API

Nguồn gốc là một thành phần cơ bản trong quá trình triển khai web, cần thiết cho cả ranh giới bảo mật và quyền riêng tư mà các tác nhân người dùng duy trì. Khái niệm này được xác định rõ ràng giữa HTML và URL, cùng với các khái niệm lân cận thường được sử dụng như trang web.

Tuy nhiên, các nguồn gốc không được cung cấp trực tiếp cho nhà phát triển web. Mặc dù có nhiều phương thức truy xuất nguồn gốc trên nhiều đối tượng, nhưng mỗi phương thức đó đều trả về quá trình chuyển đổi tuần tự ASCII của một nguồn gốc, chứ không phải chính nguồn gốc đó. Điều này có một số tác động tiêu cực. Trên thực tế, các nhà phát triển cố gắng thực hiện so sánh cùng nguồn gốc hoặc cùng trang web khi xử lý các nguồn gốc được chuyển đổi tuần tự thường mắc lỗi theo cách dẫn đến các lỗ hổng. Về mặt triết học, có vẻ như đây là một nguyên tắc bảo mật bị thiếu mà các nhà phát triển gặp khó khăn trong việc điền chính xác.

Origin API giải quyết khoảng trống này trong nền tảng bằng cách giới thiệu một đối tượng origin bao bọc khái niệm nguồn gốc và cung cấp các phương thức hữu ích để so sánh, chuyển đổi tuần tự và phân tích cú pháp.

Sanitizer API

Sanitizer API cung cấp cho nhà phát triển một cách để 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.

Sự điều chỉnh theo quy cách Loại đáng tin cậy

Trusted Types (Các loại đáng tin cậy) được triển khai và ra mắt lần đầu tiên trong Chrome vào năm 2019.

Thông số kỹ thuật Trusted Type hiện đang được triển khai trong các trình duyệt khác. Trong quá trình đó, nhiều điểm không nhất quán đang được xác định và khắc phục trong quy cách. Bản phát hành này khắc phục những vấn đề này trong Chrome để phù hợp với quy cách mới.

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

Trong Chrome 145, bạn có thể chọn tham gia các thử nghiệm nguồn gốc mới sau đây.

WebAudio: Lượng kết xuất có thể định cấu hình

AudioContextOfflineAudioContext hiện có một renderSizeHint không bắt buộc. Khi một số nguyên được truyền, người dùng có thể yêu cầu một kích thước lượng tử kết xuất cụ thể, sử dụng giá trị mặc định là 128 khung hình nếu không có gì hoặc default được truyền, hoặc yêu cầu Tác nhân người dùng chọn một kích thước lượng tử kết xuất phù hợp nếu hardware được chỉ định.

Bản không dùng nữa và xoá

Phiên bản Chrome này giới thiệu các tính năng không dùng nữa và bị xoá sau đây. Hãy truy cập ChromeStatus.com để xem danh sách các tính năng dự kiến sẽ không dùng nữa, các tính năng hiện không dùng nữa và các tính năng đã bị xoá trước đây.

Chrome ngừng hỗ trợ các camera ảo lỗi thời trên macOS

Kể từ Chrome 145, Chrome sẽ ngừng hỗ trợ các camera ảo lỗi thời cho tất cả các bản phát hành macOS mà Chrome hỗ trợ.

Trên macOS, các camera ảo hiện đại được tạo bằng khung Core Media IO. Khung này đã có sẵn từ macOS 12.3. Apple đã liên hệ và tất cả phần mềm camera ảo hiện đại đều đã được di chuyển để sử dụng khung Core Media IO này.

Bản thân macOS đã chặn các camera ảo lỗi thời (được tạo dưới dạng trình bổ trợ DAL) kể từ macOS 14.1 (2023) và Safari đã không hỗ trợ các camera này kể từ năm 2018 (nếu không phải sớm hơn).

Xoá tiện ích BMP để nhúng JPEG hoặc PNG vào BMP

Chrome sẽ xoá tiện ích BMP để nhúng JPEG hoặc PNG vào BMP vì không có trình duyệt nào khác hỗ trợ tiện ích này và tiện ích này không có tác dụng (như đã đăng ký bằng dữ liệu UMA).

Giảm chuỗi tác nhân người dùng theo mặc định

Kể từ Chrome 145, chính sách UserAgentReduction sẽ bị xoá hoàn toàn. Trước đây, chính sách này được dùng để kiểm soát việc Chrome gửi chuỗi User-Agent rút gọn hay đầy đủ.

Để tăng cường quyền riêng tư của người dùng và giảm khả năng theo dõi thụ động, Chrome đã bắt đầu giảm lượng thông tin có trong tiêu đề User-Agent theo mặc định trong Chrome phiên bản 110. Chính sách UserAgentReduction được cung cấp như một biện pháp tạm thời để các doanh nghiệp quản lý quá trình chuyển đổi này.

Cơ chế được đề xuất để các trang web truy cập vào thông tin về trình duyệt và thiết bị hiện là User-Agent Client Hints (UA-CH). UA-CH yêu cầu các trang web chủ động yêu cầu thông tin cụ thể, đây là một phương pháp bảo vệ quyền riêng tư hiệu quả hơn so với chuỗi User-Agent cũ.

Kể từ Chrome 145 trở đi, chính sách UserAgentReduction sẽ không có hiệu lực. Theo mặc định, Chrome sẽ gửi một chuỗi tác nhân người dùng đã được rút gọn. Những hệ thống hoặc ứng dụng dựa vào chính sách này để nhận chuỗi User-Agent đầy đủ (phiên bản cũ) có thể không còn nhận được thông tin chi tiết mà chúng mong đợi.