การเปลี่ยนแปลงต่อไปนี้จะมีผลกับ Chrome เวอร์ชันเบต้ารุ่นล่าสุดสำหรับ Android, ChromeOS, Linux, macOS และ Windows เว้นแต่จะระบุไว้เป็นอย่างอื่น ดูข้อมูลเพิ่มเติมเกี่ยวกับฟีเจอร์ต่างๆ ที่ระบุไว้ที่นี่ผ่านลิงก์ที่ให้ไว้หรือจากรายการใน ChromeStatus.com โดย Chrome 125 เป็นรุ่นเบต้า ณ วันที่ 17 เมษายน 2024 คุณดาวน์โหลดเวอร์ชันล่าสุดได้ที่ Google.com สำหรับเดสก์ท็อปหรือ Google Play Store บน Android เมื่อเปิดตัวเป็นเวอร์ชันเสถียรแล้ว คุณจะดูฟีเจอร์ทั้งหมดที่รวมอยู่ในรุ่นได้ในบันทึกประจำรุ่น
CSS
รุ่นนี้เพิ่มฟีเจอร์ CSS ใหม่ 2 รายการและทำการเปลี่ยนแปลง 2 รายการเกี่ยวกับ CSS
การกำหนดตำแหน่งแท็ก Anchor ของ CSS
การวางตำแหน่ง Anchor ของ CSS ช่วยให้นักพัฒนาซอฟต์แวร์ปล่อยสัญญาณองค์ประกอบที่มีตำแหน่งแบบสัมบูรณ์กับองค์ประกอบอื่นๆ อย่างน้อย 1 รายการในหน้าเว็บ (โฆษณา Anchor) ในลักษณะการประกาศโดยไม่ต้องใช้ JavaScript การวางตำแหน่งจุดยึดจะมีประสิทธิภาพดีขึ้นเมื่อเลื่อนจุดยึดได้ กรณีการใช้งานทั่วไปคือการวางตำแหน่งป๊อปอัป เช่น เคล็ดลับเครื่องมือไว้ข้างองค์ประกอบที่เรียกใช้องค์ประกอบนั้น หรือเมนูเลือกและรายการตัวเลือกป๊อปอัป ก่อนฟีเจอร์การวางตำแหน่ง Anchor กรณีการใช้งานเหล่านี้ต้องใช้ JavaScript ในการวางตำแหน่งป๊อปอัปแบบไดนามิก และยึดตำแหน่งดังกล่าวไว้เมื่อมีการเลื่อนองค์ประกอบที่เรียกใช้ ซึ่งเป็นประสิทธิภาพการทำงานที่ยากต่อการเหวี่ยงหน้าจอ เมื่อวางตำแหน่ง Anchor จะนำกรณีการใช้งานเหล่านี้ไปใช้ได้อย่างมีประสิทธิภาพและประกาศแจ้ง
ฟีเจอร์การกำหนดตำแหน่ง Anchor ประกอบด้วยพร็อพเพอร์ตี้ CSS จำนวนมาก คุณสมบัติหลักบางส่วนมีดังนี้
anchor-name
: ตั้งค่าองค์ประกอบให้เป็น Anchor สำหรับองค์ประกอบอื่นๆposition-anchor
: อธิบาย Anchor "เริ่มต้น" ที่องค์ประกอบที่ Anchor ควรใช้สำหรับการวางตำแหน่ง Anchor- ฟังก์ชัน
anchor()
: ใช้เพื่ออ้างอิงถึงตำแหน่งขององค์ประกอบ Anchor ในการวางตำแหน่งองค์ประกอบที่ตรึงไว้ inset-area
: ชวเลขสำหรับการกำหนดตำแหน่งสำหรับตำแหน่งสัมพัทธ์ทั่วไป
ฟังก์ชันค่าขั้นของ CSS - round()
, mod()
และ rem()
ฟังก์ชันค่าขั้นบันได round()
, mod()
และ rem()
ทั้งหมดจะเปลี่ยนรูปแบบค่าหนึ่งๆ ตาม "ค่าขั้นตอน" อื่น
ฟังก์ชัน CSS round()
จะแสดงผลตัวเลขที่ปัดเศษโดยอิงตามกลยุทธ์การปัดเศษที่เลือก
ฟังก์ชัน CSS ของ mod()
จะแสดงผลโมดูลัสที่เหลือเมื่อพารามิเตอร์แรกถูกหารด้วยพารามิเตอร์ที่ 2 เช่นเดียวกับโอเปอเรเตอร์เศษของ JavaScript (%) โมดูลัสคือค่าที่เหลือเมื่อตัวถูกดำเนินการตัวหนึ่ง (ตัวถูกตั้ง) ถูกหารด้วยตัวถูกดำเนินการตัวที่สอง นั่นคือตัวหาร ซึ่งจะนำเครื่องหมายของตัวหารเสมอ
ฟังก์ชัน CSS rem()
จะแสดงผลเศษที่เหลือเมื่อพารามิเตอร์แรกหารด้วยพารามิเตอร์ที่ 2 เช่นเดียวกับโอเปอเรเตอร์เศษของ JavaScript (%) เศษที่เหลือคือค่าที่เหลือเมื่อตัวถูกดำเนินการตัวหนึ่ง (ตัวถูกดำเนินการ) ถูกหารด้วยตัวถูกดำเนินการตัวที่ 2 ซึ่งก็คือตัวหาร ซึ่งจะใช้สัญญาณของการหารเสมอ
ลบความไม่ต่อเนื่องของสี Oklab และ Oklch ที่มีความสว่างเกือบ 100% หรือ 0
ก่อนการเปลี่ยนแปลงนี้ สีทั้งหมดใน Lab, LCH, Oklab และ Oklch ที่มีค่าความสว่าง 100% จะแสดงผลเป็นสีขาว โดยไม่คำนึงถึงพารามิเตอร์อีก 2 ค่า สีทุกสีในพื้นที่ทำงานเหล่านี้ที่มีค่าความสว่างเป็น 0 จะแสดงผลเป็นสีดำ การแมปทั้ง 2 อย่างนี้ทำให้เกิดความไม่ต่อเนื่องในการไล่ระดับสี ซึ่งเป็นสิ่งที่นักพัฒนาเว็บคาดไม่ถึง
ด้วยการย้อนกลับนี้ สีเหล่านี้จะไม่ถูกแมปอีกต่อไป และสีที่แสดงจะเป็นแบบต่อเนื่องกับสีใกล้เคียงและขึ้นอยู่กับการแมปขอบเขตของการแสดงผล
ใช้แถบเลื่อนรูทรูปแบบสี
ทำให้เบราว์เซอร์ใช้รูปแบบสีที่ผู้ใช้ต้องการเพื่อแสดงผลแถบเลื่อนของวิวพอร์ตหากค่าของ "รูปแบบสีที่รองรับของหน้า" เป็น "ปกติ" หรือไม่ได้ระบุ และค่าที่คำนวณแล้วของ color-scheme
สำหรับองค์ประกอบรากคือ normal
แถบเลื่อนของวิวพอร์ตถือได้ว่าอยู่นอกเนื้อหาเว็บ ดังนั้น User Agent ควรใช้รูปแบบสีที่ผู้ใช้ต้องการเมื่อแสดงผลแถบเลื่อนของวิวพอร์ตหากนักพัฒนาซอฟต์แวร์ไม่ได้ระบุการรองรับรูปแบบสีไว้อย่างชัดเจน
การเปลี่ยนแปลงนี้ไม่ได้ทำให้นักพัฒนาซอฟต์แวร์ควบคุมรูปแบบสีของแถบเลื่อนไม่ได้ ลักษณะการทำงานใหม่นี้ทำให้เบราว์เซอร์ใช้รูปแบบสีที่ผู้ใช้ต้องการเพื่อแสดงผลแถบเลื่อนแบบไม่ซ้อนทับของวิวพอร์ตเฉพาะในกรณีที่นักพัฒนาซอฟต์แวร์ไม่ได้ระบุรูปแบบสีสำหรับองค์ประกอบรูทเท่านั้น
HTML
คอนเทนเนอร์แบบเลื่อนที่โฟกัสได้ด้วยแป้นพิมพ์
ปรับปรุงการช่วยเหลือพิเศษโดยทำให้คอนเทนเนอร์แบบเลื่อนโฟกัสได้โดยการใช้การนำทางโฟกัสตามลำดับ ก่อนการเปลี่ยนแปลงนี้ แป้นแท็บจะไม่โฟกัสแถบเลื่อน
เว้นแต่จะตั้งค่า tabIndex
เป็น 0 ขึ้นไปอย่างชัดเจน
การกำหนดให้แถบเลื่อนสามารถโฟกัสได้โดยค่าเริ่มต้น ทำให้ผู้ใช้ที่ไม่สามารถ (หรือไม่ต้องการ) ใช้เมาส์สามารถโฟกัสเนื้อหาที่คลิปได้โดยใช้แท็บของแป้นพิมพ์และปุ่มลูกศร คุณสมบัตินี้เปิดใช้เฉพาะเมื่อแถบเลื่อนไม่มีเด็กที่โฟกัสแป้นพิมพ์ได้
การเปิดตัวนี้เป็นแบบต่อเนื่องซึ่งเริ่มต้นใน Chrome 124 และควรพร้อมใช้งานสำหรับผู้ใช้ทุกคนจาก Chrome 125 ดูข้อมูลเพิ่มเติมเกี่ยวกับตัวเลื่อนที่โฟกัสได้บนแป้นพิมพ์
การเรียงลำดับ DOM เงาเชิงประกาศ
ฟีเจอร์ที่ช่วยให้นักพัฒนาซอฟต์แวร์เรียงลำดับต้นไม้ DOM ที่มีรากของเงา ซึ่งเพิ่งทำให้เป็นมาตรฐานในมาตรฐาน HTML ได้
API ของเว็บ
ส่วนเพิ่มเติมจาก Attribution Reporting API
เราได้เพิ่มฟีเจอร์ต่างๆ ลงใน Attribution Reporting API เพื่อสร้างความสามารถในการแก้ไขข้อบกพร่องเพิ่มเติม โดยการรองรับรายงานการแก้ไขข้อบกพร่องเมื่อล้มเหลว ปรับปรุงหลักการยศาสตร์ของ API โดยการรองรับช่องเพื่อระบุแพลตฟอร์มการลงทะเบียนที่ต้องการ และปรับปรุงความเป็นส่วนตัว
Compute Pressure API
Compute Pressure API แสดงสถานะระดับสูงซึ่งแสดงถึงโหลดของ CPU ในระบบ การติดตั้งใช้งานจะทำให้ได้ใช้เมตริกฮาร์ดแวร์ที่สำคัญ เพื่อให้ผู้ใช้สามารถใช้ประโยชน์จากพลังการประมวลผลที่มี ตราบใดที่ระบบไม่อยู่ใต้ความเครียดที่จัดการไม่ได้ Intel เป็นผู้นำในการออกแบบและการใช้งานสำหรับ API นี้ ซึ่งจะทำให้แอปการประชุมทางวิดีโอสมดุลระหว่างฟีเจอร์กับประสิทธิภาพแบบไดนามิก
ยอมรับ URL ของ HTTP(S) เมื่อสร้าง WebSocket
การอัปเดตนี้เปิดใช้รูปแบบ HTTP ในตัวสร้าง WebSocket จึงอนุญาตให้นักพัฒนาซอฟต์แวร์ใช้ URL สัมพัทธ์ได้ด้วย URL เหล่านี้ได้รับการแปลงเป็นรูปแบบภายใน ws:
และ wss:
การขยาย Storage Access API (SAA) ไปยังพื้นที่เก็บข้อมูลที่ไม่ใช่คุกกี้
ซึ่งจะเป็นการเปิดตัวส่วนขยายที่เสนอของ Storage Access API (รองรับย้อนหลังและอยู่ในช่วงทดลองใช้จากต้นทาง) เพื่ออนุญาตให้เข้าถึงคุกกี้ที่ไม่มีการแบ่งพาร์ติชันและพื้นที่เก็บข้อมูลที่ไม่ใช่คุกกี้ในบริบทของบุคคลที่สาม API ปัจจุบันจะให้สิทธิ์เข้าถึงคุกกี้เท่านั้น ซึ่งมีกรณีการใช้งานที่ต่างจากพื้นที่เก็บข้อมูลที่ไม่ใช่คุกกี้
ข้อกำหนดของ FedCM CORS เกี่ยวกับปลายทางการยืนยันรหัส
การดึงข้อมูลใน FedCM API ยากที่จะให้เหตุผลเพราะข้อมูลเหล่านี้จำเป็น ในระหว่างที่มีการพูดคุยเรื่องปลายทางของบัญชีอยู่นั้น ก็มีความเห็นพ้องส่วนใหญ่ว่าปลายทางการยืนยันรหัสควรใช้ CORS การอัปเดตนี้เพื่อปรับพร็อพเพอร์ตี้ความปลอดภัยของการดึงข้อมูลนี้ให้ใกล้เคียงกับการดึงข้อมูลอื่นๆ ในแพลตฟอร์มเว็บมากขึ้น ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีการทำงานของข้อกำหนดของ CORS ได้ในข้อมูลอัปเดตของ FedCM: ช่วงทดลองใช้ Button Mode API จากต้นทาง, CORS และ SammeSite
การดำเนินการเริ่มต้นของเมาส์ที่ทำงานร่วมกัน
Chrome อนุญาตให้ยกเลิกเหตุการณ์การย้ายเมาส์เพื่อป้องกัน API อื่นๆ เช่น การเลือกข้อความ (และแม้แต่การลากและวางในอดีต) เบราว์เซอร์หลักอื่นๆ ไม่ตรงกับเบราว์เซอร์หลักอื่นๆ และไม่เป็นไปตามข้อกำหนดเหตุการณ์ UI ตอนนี้การเลือกข้อความจะไม่ถือเป็นการดำเนินการเริ่มต้นของการย้ายเมาส์แล้ว การเลือกและลากและวางข้อความยังคงทำได้โดยการยกเลิกกิจกรรม selectstart
และ dragstart
ตามลำดับ
การอัปเดต Shared Storage API
การอัปเดตนี้จะเพิ่มการรองรับการเรียกใช้เวิร์กเลตแบบข้ามต้นทางโดยไม่ต้องสร้าง iframe
แอป Chrome
Direct Sockets API ในแอป Chrome
การอัปเดตนี้ช่วยลดความซับซ้อนในการเปลี่ยนจากแอป Chrome ไปใช้แอป Isolated Web App ด้วยการเปิดใช้ Direct Sockets ในแอป Chrome ซึ่งช่วยให้เว็บแอปสร้างโปรโตคอลควบคุมการส่งข้อมูลโดยตรง (TCP) และ User Datagram Protocol (UDP) การสื่อสารกับอุปกรณ์และระบบเครือข่ายได้
ช่วงทดลองใช้จากต้นทางใหม่
จาก Chrome 125 คุณจะเลือกใช้ช่วงทดลองใช้จากต้นทางใหม่ต่อไปนี้ได้
API โหมดปุ่ม FedCM และใช้ API บัญชีอื่น
ช่วงทดลองใช้จากต้นทางนี้รวมถึง FedCM API 2 รายการต่อไปนี้
Button Mode API ช่วยให้เว็บไซต์เรียกใช้ FedCM ได้ภายในการคลิกปุ่ม เช่น การคลิกปุ่ม Sign-in to IdP ซึ่งกำหนดให้ FedCM ตอบสนองอยู่เสมอด้วยอินเทอร์เฟซผู้ใช้ที่มองเห็นได้ ไม่ใช่โหมดวิดเจ็ต ซึ่งจะไม่แสดง UI เมื่อผู้ใช้ออกจากระบบ การเรียกใช้ FedCM API ในโหมดปุ่มจะนําผู้ใช้เข้าสู่ระบบ IdP (ในหน้าต่างกล่องโต้ตอบ) เมื่อผู้ใช้ออกจากระบบ
นอกจากนี้ เนื่องจากมีการเรียกโหมดปุ่มภายในท่าทางสัมผัสของผู้ใช้อย่างชัดแจ้ง UI จึงอาจโดดเด่นกว่า (เช่น อยู่ตรงกลางและโมดัล) เมื่อเทียบกับ UI จากโหมดวิดเจ็ต (ซึ่งไม่มีความตั้งใจที่ชัดเจนเช่นนี้) ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีการทำงานของ Button Mode API ในข้อมูลอัปเดตจาก FedCM: การทดลองต้นทาง API โหมดปุ่ม, CORS และ SameSite
Use Other Account API ช่วยให้ผู้ให้บริการข้อมูลประจำตัวอนุญาตให้ผู้ใช้ลงชื่อเข้าใช้บัญชีอื่นได้
ลงทะเบียนเข้าร่วมช่วงทดลองใช้จากต้นทาง ของ FedCM
API แบบพับได้
ช่วงทดลองใช้จากต้นทางนี้รวมถึง Device Posture API และกลุ่มวิวพอร์ตของกลุ่มวิวพอร์ต API เหล่านี้ออกแบบมาเพื่อช่วยนักพัฒนาแอปกำหนดเป้าหมายอุปกรณ์แบบพับได้ ดูข้อมูลเพิ่มเติมในช่วงทดลองใช้จากต้นทางสำหรับ API แบบพับได้
ลงทะเบียนทดลองใช้ Foldable API จากต้นทาง
การเลือกไม่ใช้ตัวอย่างสื่อ
ช่วงทดลองใช้จากต้นทางแบบย้อนกลับนี้จะยกเว้นเว็บไซต์ต่างๆ จากการเปิดตัว Media Previews
Chrome ต้องการแสดงตัวอย่างอินพุตกล้องและไมโครโฟนแบบเรียลไทม์ในขณะที่เว็บไซต์ขอสิทธิ์เข้าถึงกล้องและไมโครโฟน ข้อมูลนี้จะมีอยู่ในข้อมูลหน้าเว็บของเว็บไซต์ด้วย
นอกจากนี้ ผู้ใช้ที่มีอุปกรณ์หลายเครื่องจะเลือกกล้องและไมโครโฟนได้เมื่อถึงเวลาที่ขอสิทธิ์ เว้นแต่ว่าเว็บไซต์จะขออุปกรณ์บางอย่างผ่าน getUserMedia()
ฟีเจอร์นี้อยู่ระหว่างการพัฒนาไปพร้อมกับโปรเจ็กต์อื่นที่เกี่ยวข้องกับสิทธิ์ นั่นคือการควบคุมสิทธิ์ที่ฝังในหน้าเว็บ (PEPC) ผู้ใช้จะเห็น PEPC ภายใต้ขั้นตอนการเปิดตัวแบบอิสระซึ่งเกี่ยวข้องกับช่วงทดลองใช้จากต้นทางที่แยกต่างหากหรือการทดสอบเฉพาะเว็บไซต์
การทดลองใช้การเลิกใช้งานสำหรับพร็อพเพอร์ตี้และเมธอดแบบเต็มหน้าจอ HTMLVideoElement ที่มีคำนำหน้า
ช่วงทดลองใช้การเลิกใช้งานนี้ช่วยให้คุณเลือกใช้การรองรับพร็อพเพอร์ตี้และเมธอด HTMLVideoElement นำหน้าได้ หากต้องการเวลาเพิ่มเติมในการปรับโค้ด ดูรายละเอียดทั้งหมดของพร็อพเพอร์ตี้และวิธีการที่นำออกไปแล้วในส่วนการเลิกใช้งานและการนำออก
ลงทะเบียนทดลองใช้การเลิกใช้งาน API แบบเต็มหน้าจอสำหรับวิดีโอคำนำหน้า
ข้ามการสแกนล่วงหน้า
ข้ามเครื่องสแกนล่วงหน้าเพื่อดูข้อดีและข้อเสียด้านประสิทธิภาพสำหรับหน้าที่ไม่มีการดึงข้อมูลทรัพยากรย่อย
ขั้นตอนของเครื่องมือสแกนล่วงหน้าจะมีประโยชน์ต่อประสิทธิภาพของหน้าเว็บที่มีการดึงข้อมูลทรัพยากรย่อย ผ่านการใช้การดึงข้อมูลล่วงหน้าแบบคาดเดา แต่สำหรับหน้าที่ไม่ได้รับประโยชน์จากขั้นตอนนี้ กล่าวคือ สำหรับหน้าเว็บที่ไม่มีทรัพยากรย่อย ค่าใช้จ่ายในการประมวลผลเพิ่มเติมมีประโยชน์น้อยมาก
สำหรับผู้ใช้เว็บขั้นสูงที่ต้องการประโยชน์จากการลดค่าใช้จ่ายนี้ การทดลองนี้ให้การควบคุมระดับหน้าเว็บเพื่อปิดใช้ตัวสแกนล่วงหน้า ข้อมูลที่เก็บรวบรวมจากการทดสอบนี้สามารถประเมินได้ว่า API ที่มีการปรับเปลี่ยนหรือการใช้งานเครื่องมือสแกนการโหลดล่วงหน้าของ HTML แบบอื่นจะเป็นประโยชน์หรือไม่
ลงทะเบียนทดลองใช้ช่วงทดลองใช้การข้ามการโหลดล่วงหน้าจากต้นทาง
การเลิกใช้งานและการนำออก
ไปที่ ChromeStatus.com เพื่อดูรายการการเลิกใช้งานที่วางแผนไว้ การเลิกใช้งานปัจจุบัน และการนำออกก่อนหน้า
Chrome รุ่นนี้จะนำฟีเจอร์ 3 อย่างต่อไปนี้ออก
นำชื่อแทน "window-placement" สำหรับสิทธิ์และนโยบายสิทธิ์ "window-management" ออก
นำชื่อแทน "window-placement" สำหรับนโยบายสิทธิ์และสิทธิ์ "window-management" ออก ซึ่งนี่เป็นส่วนหนึ่งของความพยายามครั้งใหญ่ในการเปลี่ยนชื่อสตริงโดยการเลิกใช้งานและนำ "window-placement" ออกจากกันในที่สุด การเปลี่ยนแปลงคำศัพท์จะช่วยเพิ่มอายุการใช้งานของข้อบ่งชี้เนื่องจาก Window Management API มีการเปลี่ยนแปลงเมื่อเวลาผ่านไป
การนำนโยบายองค์กรออก: NewBaseUrlInheritanceBehaviorAllowed
การเปลี่ยนแปลงโค้ดที่สำคัญ (เปิดใช้ลักษณะการรับช่วง URL ฐานใหม่) ซึ่งมีการเปิดใช้การลบล้างนโยบายองค์กรนี้ในรุ่นที่เสถียรตั้งแต่เดือนสิงหาคม 2023 (118.0.5966.0) เนื่องจากมีการจัดการกับปัญหาที่ทราบ นโยบายองค์กรนี้จะถูกนำออกใน Chrome 125
การนำพร็อพเพอร์ตี้และเมธอดเต็มหน้าจอของ HTMLVideoElement ที่มีคำนำหน้าออก
API เต็มหน้าจอของ HTMLVideoElement
ที่มีคำนำหน้าเลิกใช้งานแล้วตั้งแต่ Chrome 38 เป็นต้นไป มีการแทนที่ด้วย Element.requestFullscreen()
ซึ่งเปิดตัวครั้งแรกในปี 2018 ใน Chrome 71
ระบบจะนำพร็อพเพอร์ตี้และวิธีการต่อไปนี้ออกจาก HTMLVideoElement
webkitSupportsFullscreen
webkitDisplayingFullscreen
webkitEnterFullscreen()
webkitExitFullscreen()
webkitEnterFullScreen()
(โปรดทราบว่าอักษรตัวพิมพ์ใหญ่ที่ต่างกันของ "S" ในโหมดเต็มหน้าจอ)webkitExitFullScreen()
ให้ลงทะเบียนสำหรับการทดลองการเลิกใช้งานที่แสดงอยู่ในโพสต์นี้ หากเว็บไซต์ของคุณยังต้องอาศัยเครื่องมือดังกล่าวอยู่และคุณต้องการเวลาเพิ่มในการอัปเดตโค้ด