Điểm mới trên nền tảng web vào tháng 3

Hãy khám phá một số tính năng thú vị đã xuất hiện trên trình duyệt web ổn định và thử nghiệm trong tháng 3 năm 2024.

Bản phát hành trình duyệt ổn định

Vào tháng 3 năm 2024, Firefox 124, Safari 17.4Chrome 123 đã trở nên ổn định. Bài đăng này đề cập đến các tính năng mới được thêm vào nền tảng web.

Điều chỉnh bảng phối màu bằng light-dark()

Hàm màu light-dark() đã có trong Chrome 123 và giúp bạn dễ dàng điều chỉnh bảng phối màu theo lựa chọn ưu tiên của người dùng hơn. Trong ví dụ sau, color-scheme được thiết lập thành light dark trên root. Các thuộc tính tuỳ chỉnh sử dụng hàm màu light-dark() để đặt các màu sẽ được chuyển đổi, tuỳ thuộc vào lựa chọn ưu tiên của người dùng về chế độ sáng hoặc tối.

:root {
  color-scheme: light dark;
  --primary-color: light-dark(#333, #fafafa);
  --primary-background: light-dark(#e4e4e4, #121212);
  --highlight-color: light-dark(hotpink, lime);
}

Xem thêm ví dụ và thông tin chi tiết trong Các màu phụ thuộc vào CSS color-scheme bằng light-dark()

Hỗ trợ trình duyệt

  • 123
  • x
  • 120

Nguồn

Kiểm soát dữ liệu đầu vào hiệu quả hơn nhờ field-sizing

Ngoài ra, trong Chrome 123, thuộc tính field-sizing sẽ cho phép tự động phát triển các trường nhập văn bản.

Hỗ trợ trình duyệt

  • 123
  • x
  • x
  • x

Khắc phục lỗi dấu câu CJK bằng text-spacing-trim

Trong Chrome 123, thuộc tính text-spacing-trim áp dụng khoảng cách cho các ký tự dấu câu của tiếng Trung, tiếng Nhật và tiếng Hàn (CJK) để điều chỉnh khoảng cách quá mức. Vui lòng đọc thêm trong phần Giới thiệu 4 tính năng quốc tế mới cho CSS.

Hỗ trợ trình duyệt

  • 123
  • x
  • x
  • x

CSS @scope theo quy tắc

Safari 17.4 có @scope cho phép bạn chọn các phần tử trong những cây con DOM cụ thể, nhắm mục tiêu chính xác các phần tử mà không cần viết bộ chọn quá cụ thể khó ghi đè cũng như không cần ghép nối bộ chọn quá chặt với cấu trúc DOM.

Tìm hiểu thêm trong phần Giới hạn phạm vi tiếp cận của các bộ chọn bằng CSS @scope theo quy tắc

Hỗ trợ trình duyệt

  • 118
  • 118
  • x
  • 17,4

Nguồn

Các điểm cải tiến ở chế độ hình trong hình

Chrome 123 có hai tính năng giúp cải thiện trải nghiệm hình trong hình. Đầu tiên là chế độ hiển thị picture-in-picture của CSS. Điều này cho phép bạn viết các quy tắc CSS cụ thể chỉ được áp dụng khi (một phần của) ứng dụng web hiển thị ở chế độ hình trong hình.

Tính năng thứ hai cho phép bạn sử dụng opener.focus từ cửa sổ hình trong hình của tài liệu để chuyển tiêu điểm ở cấp hệ thống đến thẻ sở hữu cửa sổ hình trong hình của tài liệu.

Điều này cho phép bạn đưa thẻ gốc trở lại nền trước khi cần. Ví dụ: khi người dùng cần truy cập vào một trải nghiệm giao diện người dùng không vừa với cửa sổ hình trong hình nhỏ hơn.

Hỗ trợ align-content ở bố cục khối và bảng

Chrome 123 và Safari 17.4 hỗ trợ align-content ở bố cục khối và bảng. Hãy đọc thông tin về thay đổi đối với align-content.

API định tuyến tĩnh của Service Worker

Trên Chrome 123, Service Worker Static Routing API đã có sẵn. API này cho phép bạn tuyên bố cách tìm nạp một số đường dẫn tài nguyên nhất định, nghĩa là trình duyệt không cần chạy một trình chạy dịch vụ chỉ để tìm nạp phản hồi từ bộ nhớ đệm, hay trực tiếp từ mạng.

Tìm hiểu thêm trong phần Sử dụng Service Worker Static Routing API để bỏ qua trình chạy dịch vụ cho các đường dẫn cụ thể.

API Khung hình động dài

Chrome 123 cũng bao gồm API Khung hình động dài, là bản cập nhật cho API Tác vụ dài để giúp bạn hiểu rõ hơn về các bản cập nhật giao diện người dùng (UI) chậm. Việc này có thể giúp xác định các khung ảnh động có tốc độ chậm có khả năng ảnh hưởng đến chỉ số Chỉ số quan trọng chính của trang web Tương tác với nội dung hiển thị tiếp theo (INP). Chỉ số này đo lường khả năng phản hồi hoặc xác định hiện tượng giật khác trên giao diện người dùng ảnh hưởng đến độ mượt.

Hỗ trợ trình duyệt

  • 123
  • x
  • x
  • x

Thuộc tính content-visibility

Firefox 124 hỗ trợ thuộc tính content-visibility của CSS. Thuộc tính này kiểm soát việc một phần tử có hiển thị nội dung của phần tử đó hay không, cho phép các trình duyệt bỏ qua việc hiển thị nội dung cho đến khi cần thiết.

Hỗ trợ trình duyệt

  • 85
  • 85
  • 124

Nguồn

Các lượt thêm vào ArrayBuffer và nhóm mảng

Trong Safari 17.4, JavaScript có một số tính năng mới có hỗ trợ thuộc tính detached cũng như phương thức transfer()transferToFixedLength() của ArrayBuffer.

Hỗ trợ trình duyệt

  • 114
  • 114
  • 122
  • 17,4

Nguồn

Safari 17.4 cũng bao gồm các phương thức nhóm mảng Object.groupByMap.groupBy. Để tìm hiểu thêm về cách nhóm mảng, hãy đọc nội dung JavaScript đang nhận các phương thức nhóm mảng.

Hỗ trợ trình duyệt

  • 117
  • 117
  • 119
  • 17,4

Nguồn

Các tính năng này hiện có khả năng tương tác, do đó sẽ tham gia chương trình mới của Baseline.

setHTMLUnsafeparseHTMLUnsafe

Phương thức setHTMLUnsafeparseHTMLUnsafe phân phối trong Safari 17.4 cho phép sử dụng DOM bóng khai báo từ JavaScript. Các phương thức này cũng cung cấp một cách dễ dàng hơn để phân tích cú pháp HTML thành DOM ngay lập tức, so với innerHTML hoặc DOMParser.

Bản phát hành trình duyệt beta

Các phiên bản trình duyệt beta cho bạn xem trước những nội dung sẽ có trong phiên bản ổn định tiếp theo của trình duyệt. Đây là thời điểm tuyệt vời để thử nghiệm hoặc xoá bỏ những tính năng mới có thể ảnh hưởng đến trang web của bạn trước khi cả thế giới nhận được bản phát hành đó. Các phiên bản thử nghiệm mới là Firefox 125Chrome 124. Các bản phát hành này mang đến nhiều tính năng tuyệt vời cho nền tảng. Hãy xem ghi chú phát hành để biết toàn bộ thông tin chi tiết. Dưới đây chỉ là một vài điểm nổi bật.

Firefox 125 đang trong quá trình hình thành để là một bản phát hành thú vị. Thư viện này bao gồm align-content trên các khối, giúp tính năng này có khả năng tương tác. Cũng được đưa vào và do đó trở thành một phần của Baseline Newly Available (Mới có sẵn của cơ sở) là API Popover. Thuộc tính transition-behavior cũng sẽ được hỗ trợ. Cửa sổ bật lên và transition-behavior là một phần của Interop 2024.

Chrome 124 bao gồm các phương thức setHTMLUnsafeparseHTMLUnsafe để cho phép sử dụng DOM tối khai báo qua JavaScript, giúp các tính năng này có thể tương tác. Ngoài ra còn có API WebSocketStream và thuộc tính writingsuggestions.