ค้นพบฟีเจอร์ที่น่าสนใจบางส่วนที่มีให้บริการในเว็บเบราว์เซอร์เวอร์ชันเสถียรและเบต้าในช่วงเดือนมีนาคม 2024
รุ่นต่างๆ ของเบราว์เซอร์ที่เสถียร
ในเดือนมีนาคม 2024 Firefox 124, Safari 17.4 และ Chrome 123 กลายเป็นเวอร์ชันเสถียร โพสต์นี้จะอธิบายฟีเจอร์ใหม่ที่เพิ่มลงในแพลตฟอร์มบนเว็บ
ปรับรูปแบบสีด้วย light-dark()
ฟังก์ชันสี light-dark()
เปิดตัวใน Chrome 123 แล้ว ซึ่งช่วยให้ปรับรูปแบบสีให้เหมาะกับความต้องการของผู้ใช้ได้ง่ายขึ้น
ในตัวอย่างนี้ color-scheme
มีการตั้งค่าเป็น light dark
ในวันที่ root
คุณสมบัติที่กำหนดเองใช้ฟังก์ชันสี light-dark()
เพื่อตั้งค่าสีที่จะสลับใช้ตามค่ากำหนดโหมดสว่างหรือมืดของผู้ใช้
:root {
color-scheme: light dark;
--primary-color: light-dark(#333, #fafafa);
--primary-background: light-dark(#e4e4e4, #121212);
--highlight-color: light-dark(hotpink, lime);
}
ดูตัวอย่างและรายละเอียดเพิ่มเติมในสีที่ขึ้นอยู่กับ color-scheme
ของ CSS ด้วย light-dark()
ควบคุมอินพุตได้ดียิ่งขึ้นด้วย field-sizing
นอกจากนี้ ใน Chrome 123 พร็อพเพอร์ตี้ field-sizing
ยังเปิดใช้ช่องป้อนข้อความที่ขยายขนาดโดยอัตโนมัติ
การใช้เครื่องหมายวรรคตอน CJK ด้วย text-spacing-trim
ใน Chrome 123 พร็อพเพอร์ตี้ text-spacing-trim
จะใช้การแยกอักขระกับอักขระเครื่องหมายวรรคตอนของภาษาจีน ญี่ปุ่น และเกาหลี (CJK) เพื่อปรับระยะห่างที่มากเกินไป
อ่านเพิ่มเติมในหัวข้อขอแนะนำฟีเจอร์ใหม่ 4 รายการสำหรับ CSS เวอร์ชันต่างประเทศ
@scope
กฎ at ของ CSS
Safari 17.4 มี
@scope
ซึ่งให้คุณเลือกองค์ประกอบในโครงสร้างย่อย DOM ที่เฉพาะเจาะจง การกำหนดเป้าหมายองค์ประกอบได้อย่างแม่นยำโดยไม่ต้องเขียนตัวเลือกที่เจาะจงมากเกินไปซึ่งลบล้างได้ยาก และโดยไม่เชื่อมโยงตัวเลือกกับโครงสร้าง DOM แน่นเกินไป
ดูข้อมูลเพิ่มเติมในหัวข้อจํากัดการเข้าถึงของตัวเลือกด้วย @scope
at-rule ของ CSS
การปรับปรุงฟีเจอร์การแสดงภาพซ้อนภาพ
Chrome 123 มีฟีเจอร์ 2 อย่างที่ช่วยปรับปรุงประสบการณ์การแสดงภาพซ้อนภาพ
รายการแรกคือpicture-in-picture
โหมดการแสดงผล CSS
สิทธิ์นี้ช่วยให้คุณเขียนกฎ CSS ที่เจาะจงซึ่งจะมีผลเฉพาะเมื่อ (ส่วนหนึ่งของ) เว็บแอปแสดงในโหมดการแสดงภาพซ้อนภาพ
ฟีเจอร์ที่ 2 ให้คุณใช้ opener.focus
จากหน้าต่างการแสดงภาพซ้อนภาพในเอกสารเพื่อโฟกัสระดับระบบไปยังแท็บที่เป็นเจ้าของหน้าต่างการแสดงภาพซ้อนภาพในเอกสาร
ซึ่งจะช่วยให้คุณนำแท็บเดิมกลับมาอยู่เบื้องหน้าได้เมื่อจำเป็น เช่น เมื่อผู้ใช้ต้องการเข้าถึงประสบการณ์การใช้งาน UI ที่ไม่พอดีกับหน้าต่างภาพซ้อนภาพขนาดเล็ก
การรองรับ align-content
ในเลย์เอาต์บล็อกและตาราง
Chrome 123 และ Safari 17.4 รองรับ align-content
ในเลย์เอาต์แบบบล็อกและตาราง อ่านข้อมูลเกี่ยวกับการเปลี่ยนแปลงการสนับสนุน align-content
Service Worker Static Routing API
Service Worker Static Routing API พร้อมใช้งานใน Chrome เวอร์ชัน 123 ขึ้นไป API นี้ช่วยให้คุณระบุวิธีที่ควรดึงข้อมูลเส้นทางทรัพยากรบางอย่างได้ ซึ่งหมายความว่าเบราว์เซอร์ไม่จําเป็นต้องเรียกใช้ Service Worker เพื่อดึงข้อมูลการตอบกลับจากแคชหรือจากเครือข่ายโดยตรง
ดูข้อมูลเพิ่มเติมได้ที่หัวข้อใช้ Service Worker Static Routing API เพื่อข้าม Service Worker สำหรับเส้นทางที่เฉพาะเจาะจง
API เฟรมของภาพเคลื่อนไหวแบบยาว
Chrome 123 ยังมี The Long Animation Frames API ซึ่งเป็นการอัปเดต Long Tasks API เพื่อให้เข้าใจการอัปเดตอินเทอร์เฟซผู้ใช้ (UI) ที่ช้าได้ดียิ่งขึ้น ซึ่งอาจมีประโยชน์ในการระบุเฟรมภาพเคลื่อนไหวที่ช้าซึ่งอาจส่งผลต่อเมตริก Interaction to Next Paint (INP) ของ Core Web Vitals ซึ่งวัดการตอบสนอง หรือเพื่อระบุ UI อื่นๆ ที่กระตุกซึ่งส่งผลต่อความลื่นไหล
พร็อพเพอร์ตี้ content-visibility
Firefox 124 รองรับพร็อพเพอร์ตี้ CSS content-visibility
พร็อพเพอร์ตี้นี้ควบคุมว่าองค์ประกอบจะแสดงผลเนื้อหาหรือไม่ ซึ่งจะช่วยให้เบราว์เซอร์ไม่ต้องแสดงผลเนื้อหาจนกว่าจะจําเป็น
การเพิ่มลงใน ArrayBuffer
และการจัดกลุ่มอาร์เรย์
ใน Safari 17.4 ทาง JavaScript จะได้รับฟีเจอร์ใหม่บางอย่างที่รองรับพร็อพเพอร์ตี้ detached
และเมธอด transfer()
และ transferToFixedLength()
ของ ArrayBuffer
Safari 17.4 ยังมีวิธีการจัดกลุ่มอาร์เรย์ Object.groupBy
และ Map.groupBy
ด้วย ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดกลุ่มอาร์เรย์ได้ที่บทความJavaScript กำลังรับวิธีการจัดกลุ่มอาร์เรย์
ฟีเจอร์เหล่านี้ทำงานร่วมกันได้แล้ว จึงผสานรวมกับฟีเจอร์ "ฟีเจอร์พื้นฐานใหม่"
setHTMLUnsafe
และ parseHTMLUnsafe
เมธอด setHTMLUnsafe
และ parseHTMLUnsafe
ที่มาพร้อมกับ Safari 17.4 ช่วยให้ใช้ Shadow DOM แบบประกาศได้จาก JavaScript
นอกจากนี้ วิธีเหล่านี้ยังช่วยให้แยกวิเคราะห์ HTML เป็น DOM ได้ง่ายๆ เมื่อเทียบกับ innerHTML
หรือ DOMParser
เบราว์เซอร์รุ่นเบต้า
เวอร์ชันเบต้าของเบราว์เซอร์จะแสดงตัวอย่างฟีเจอร์ที่จะอยู่ในเบราว์เซอร์เวอร์ชันเสถียรเวอร์ชันถัดไป นี่เป็นโอกาสที่ดีในการทดสอบฟีเจอร์ใหม่หรือการนําออกที่อาจส่งผลต่อเว็บไซต์ของคุณก่อนที่ผู้ใช้ทั่วโลกจะได้รับฟีเจอร์หรือการเปลี่ยนแปลงนั้น เบต้าเวอร์ชันใหม่คือ Firefox 125 และ Chrome 124 การเปิดตัวเหล่านี้จะเพิ่มฟีเจอร์ที่ยอดเยี่ยมมากมายลงในแพลตฟอร์ม ดูรายละเอียดทั้งหมดได้ในหมายเหตุของรุ่น ต่อไปนี้คือไฮไลต์บางส่วน
Firefox 125 กำลังจะเป็นรุ่นที่น่าตื่นเต้น
ซึ่งรวมถึง align-content
ในบล็อกต่างๆ ทำให้ฟีเจอร์นี้ทำงานร่วมกันได้
นอกจากนี้ Popover API ยังรวมอยู่ด้วยและเป็นส่วนหนึ่งของ "พร้อมใช้งานใหม่ในรุ่นพื้นฐาน" ระบบจะรองรับพร็อพเพอร์ตี้ transition-behavior
ด้วย
Popup และ transition-behavior
เป็นส่วนหนึ่งของ Interop 2024
Chrome 124 มีเมธอด setHTMLUnsafe
และ parseHTMLUnsafe
เพื่ออนุญาตให้ใช้ Declarative Shadow DOM จาก JavaScript ซึ่งทำให้ฟีเจอร์เหล่านี้ทำงานร่วมกันได้ รวมถึง WebSocketStream API และแอตทริบิวต์ writingsuggestions