รูปแบบที่กำหนดขอบเขตสำหรับ CSS, ฟีเจอร์สื่อเพิ่มเติม, คอนเทนเนอร์แบบเลื่อนที่โฟกัสได้ด้วยแป้นพิมพ์ และอื่นๆ
การเปลี่ยนแปลงต่างๆ ที่ได้อธิบายไว้จะมีผลกับ Chrome เวอร์ชันเบต้าใหม่ล่าสุดสำหรับ Android, ChromeOS, Linux, macOS และ Windows ยกเว้นกรณีที่ระบุไว้เป็นอย่างอื่น เรียนรู้เพิ่มเติมเกี่ยวกับฟีเจอร์ที่แสดงรายการไว้ที่นี่ผ่านลิงก์ที่ให้ไว้หรือจากรายการใน ChromeStatus.com Chrome 118 เป็นเวอร์ชันเบต้าตั้งแต่วันที่ 13 กันยายน 2023 คุณดาวน์โหลดเวอร์ชันล่าสุดได้จาก Google.com สำหรับเดสก์ท็อปหรือ Google Play Store ใน Android
CSS
รุ่นนี้เพิ่มฟีเจอร์ใหม่ 4 รายการใน CSS
รูปแบบที่กำหนดขอบเขต
กฎ @scope
ช่วยให้นักพัฒนาซอฟต์แวร์กฎรูปแบบขอบเขตกับรากที่กำหนดขอบเขตที่ระบุ และองค์ประกอบรูปแบบตามระยะห่างของรากที่กำหนดขอบเขตนั้น
ค่าที่เกี่ยวข้องกับโฟลว์แบบตรรกะของ CSS
เพิ่มค่าใหม่ต่อไปนี้ลงในพร็อพเพอร์ตี้ CSS ที่มีอยู่
float: inline-start
float: inline-end
clear: inline-start
clear: inline-end
resize: block
resize: inline
คีย์เวิร์ดที่มีทิศทางซึ่งสัมพันธ์กับกระแสจะแปลงเป็นค่าทางกายภาพ โดยขึ้นอยู่กับโหมดการเขียนหรือทิศทางขององค์ประกอบ หรือการบล็อกที่อยู่ภายในองค์ประกอบ
คำสืบค้นสื่อ: ฟีเจอร์ต้องการ-ลด-ความโปร่งใส
เพิ่มฟีเจอร์สื่อของ prefers-reduced-transparency
ซึ่งช่วยให้นักพัฒนาแอปปรับเนื้อหาเว็บตามค่ากำหนดที่ผู้ใช้เลือกเพื่อลดความโปร่งใสในระบบปฏิบัติการได้ เช่น การตั้งค่าลดความโปร่งใสใน macOS ตัวเลือกที่ใช้ได้คือ reduce
หรือ no-preference
รองรับช่องเส้นโครงร่าง, ช่องเนื้อหา และกล่องเส้นขอบในพร็อพเพอร์ตี้ CSS ของ Transform-box
การเพิ่มการรองรับนี้จะช่วยให้เปลี่ยนวิธีการคำนวณช่องอ้างอิงสำหรับพร็อพเพอร์ตี้ transform
ได้ ซึ่งจะช่วยให้มีการเปลี่ยนรูปแบบหรือเอฟเฟกต์ด้านกราฟิกเพิ่มเติมได้ ตัวอย่างเช่น การหมุนรอบจุดในช่องเนื้อหา โดยที่ความกว้างของขอบขององค์ประกอบจะไม่มีผลต่อผลลัพธ์ หรือ ซึ่งเส้นโครงร่างขององค์ประกอบ (SVG) ควรส่งผลต่อผลลัพธ์ เช่น เมื่อหมุนรูปร่างที่มีเส้นโครงร่างไปรอบๆ จุดกึ่งกลาง รวมถึงเส้นโครงร่าง
HTML
คอนเทนเนอร์แบบเลื่อนที่โฟกัสได้ด้วยแป้นพิมพ์
ปรับปรุงการช่วยเหลือพิเศษโดยทำให้คอนเทนเนอร์แบบเลื่อนโฟกัสได้ด้วยการใช้การไปยังส่วนต่างๆ แบบโฟกัสตามลำดับ ก่อนการเปลี่ยนแปลงนี้ แป้น Tab จะไม่โฟกัสตัวเลื่อน เว้นแต่จะตั้งค่า tabIndex
เป็น 0
ขึ้นไปอย่างชัดเจน เมื่อกำหนดให้แถบเลื่อนโฟกัสได้โดยค่าเริ่มต้น ผู้ใช้ที่ไม่สามารถใช้เมาส์ (หรือไม่ต้องการ) จะเข้าถึงเนื้อหาที่ถูกตัดได้โดยใช้แท็บและแป้นลูกศรของแป้นพิมพ์ ลักษณะการทำงานนี้ไม่ใช้กับตัวเลื่อนที่มีองค์ประกอบที่โฟกัสได้ของแป้นพิมพ์ เนื่องจากจะเข้าถึงผ่านแป้นพิมพ์ได้อยู่แล้ว
นำลักษณะการทำงานของโหมดที่ไม่มาตรฐานสำหรับแอตทริบิวต์ป้ายกำกับตัวเลือกออก
องค์ประกอบตัวเลือกรองรับแอตทริบิวต์ label
ซึ่งทำให้ตัวเลือกแสดงผลพร้อมกับข้อความภายในแอตทริบิวต์แทนที่จะเป็นข้อความย่อยขององค์ประกอบตัวเลือก ฟังก์ชันนี้ปิดใช้งานในโหมดที่ไม่มาตรฐานซึ่งระบบจะไม่สนใจแอตทริบิวต์ป้ายกำกับและข้อความย่อยจะแสดงผลเสมอ การเปลี่ยนแปลงนี้จะใช้แอตทริบิวต์ป้ายกำกับทั้งในโหมดมาตรฐานและโหมดที่ไม่มาตรฐานเสมอ
API ของเว็บ
การลงทะเบียนสำหรับ Privacy Sandbox (PSB)
เนื่องจาก API การวัดผลและความเกี่ยวข้องของ Privacy Sandbox เริ่มมีความพร้อมใช้งานทั่วไป เราจึงต้องการแน่ใจว่าได้ใช้เทคโนโลยีเหล่านี้อย่างเหมาะสมและมีความโปร่งใส API เหล่านี้รวมถึง Attribution Reporting, Protected Audience API, Topics API, Private Aggregation API และ Shared Storage API PSB กำลังจะเปิดตัวขั้นตอนการลงทะเบียนนักพัฒนาแอปใหม่สำหรับความเกี่ยวข้องและ API การวัดผลของ Privacy Sandbox Chrome จะดึงรายการเว็บไซต์ที่ลงทะเบียนจากเซิร์ฟเวอร์การลงทะเบียน (ผ่านตัวอัปเดตคอมโพเนนต์) และใช้เพื่อเข้าถึง Privacy Sandbox API
บล็อกคุกกี้ทั้งหมดที่ตั้งค่าผ่าน JavaScript ที่มีอักขระควบคุม
อัปเดตวิธีจัดการอักขระควบคุมในคุกกี้ที่ตั้งค่าผ่าน JavaScript โดยเฉพาะอย่างยิ่ง อักขระควบคุมทั้งหมดจะทำให้คุกกี้ทั้งหมดถูกปฏิเสธ ก่อนหน้านี้อักขระ Null, อักขระขึ้นบรรทัดใหม่ หรืออักขระแบบฟีดบรรทัดในบรรทัดคุกกี้ทำให้เกิดการตัดข้อความแทนที่จะปฏิเสธทั้งหมด ซึ่งอาจทำให้เกิดลักษณะการทำงานที่เป็นอันตรายในบางสถานการณ์ ลักษณะการทำงานนี้ทำให้ Chrome สอดคล้องกับลักษณะการทำงานที่ระบุไว้ในเวอร์ชันล่าสุดของ RFC6265bis คุณปิดใช้การเปลี่ยนแปลงนี้ได้โดยใช้นโยบายองค์กร --disable-features=BlockTruncatedCookies
หรือ BlockTruncatedCookies ซึ่งจะดำเนินการในหลายเป้าหมายในกรณีที่การเปลี่ยนแปลงนี้ก่อให้เกิดความเสียหาย
ขนาดแบบอักษรขั้นต่ำที่สอดคล้องกันในภาษาต่างๆ
เปลี่ยนการตั้งค่าขนาดแบบอักษรขั้นต่ำให้ปิดอยู่โดยค่าเริ่มต้นสำหรับ 7 ภาษา (อาหรับ ฟาร์ซี ญี่ปุ่น เกาหลี ไทย จีนตัวย่อ และจีนตัวเต็ม) เพื่อปรับปรุงความสามารถในการทำงานร่วมกันและการเข้าถึง ก่อนการเปลี่ยนแปลงนี้ การตั้งค่านี้จะปิดไว้โดยค่าเริ่มต้นสำหรับทุกภาษายกเว้น 7 ภาษาที่แสดงอยู่ การเปลี่ยนแปลงนี้จะทำให้ภาษาเหล่านี้สอดคล้องกับภาษาอื่นๆ โปรดทราบว่าการเปลี่ยนแปลงนี้ไม่เกี่ยวกับการเปลี่ยนฟีเจอร์ขนาดแบบอักษรขั้นต่ำ ซึ่งจะพร้อมใช้งานโดยไม่มีการเปลี่ยนแปลงใดๆ เกี่ยวกับการเข้าถึงและความง่ายในการอ่าน
ตรวจหาการเปลี่ยนของ UA ในการไปยังส่วนต่างๆ ของเอกสารเดียวกัน
การเปลี่ยนภาพแบบราบรื่นในขณะที่ผู้ใช้ท่องเว็บอาจลดภาระของการรับรู้โดยการช่วยให้ผู้ใช้อยู่ในบริบท อย่างไรก็ตาม ประสบการณ์ของผู้ใช้จะแย่หากทั้งผู้เขียนเว็บไซต์และ UA เพิ่มการเปลี่ยนเหล่านี้ การเปลี่ยนฉากอาจทำให้เกิดความขัดแย้งและทำให้ผู้ใช้เกิดความสับสน API นี้ช่วยป้องกันกรณีดังกล่าวเพื่อให้ดำเนินการเปลี่ยนภาพได้ทีละรายการเท่านั้น API จะเพิ่มบูลีนใน PopStateEvent
และ NavigateEvent
เพื่อระบุว่า UA ได้ดำเนินการเปลี่ยนภาพสําหรับการนําทางนี้หรือไม่ นักพัฒนาแอปสามารถใช้การดำเนินการนี้เพื่อข้ามการเปลี่ยนที่กำหนดเองได้
โปรแกรมแยกวิเคราะห์ URL จะไม่ถอดรหัสอักขระ ASCII ที่เข้ารหัสด้วยเปอร์เซ็นต์ในเส้นทางของ URL
การเปลี่ยนแปลงนี้ทำให้โปรแกรมแยกวิเคราะห์ URL ไม่ถอดรหัสอักขระ ASCII ที่เข้ารหัสแบบเปอร์เซ็นต์ในเส้นทางของ URL เช่น "%41" ("A") ก่อนการเปลี่ยนแปลงนี้
const url = new URL("http://example.com/%41");
url.href "http://example.com/A"
สิ่งที่จะเกิดขึ้นหลังจากการเปลี่ยนแปลงนี้
const url = new URL("http://example.com/%41");
url.href "http://example.com/%41"
การกำหนดเป้าหมายเชิงลบของกลุ่มเป้าหมายที่มีการป้องกัน
ในการประมูลโฆษณาออนไลน์สำหรับพื้นที่โฆษณา บางครั้งการป้องกันการแสดงโฆษณาต่อผู้ชมบางกลุ่มอาจมีประโยชน์ หรือที่เรียกว่าการกำหนดเป้าหมายเชิงลบ ตัวอย่างเช่น คุณอาจไม่ต้องการแสดงโฆษณาลูกค้าใหม่แก่ลูกค้าเดิม แคมเปญการได้ลูกค้าใหม่มักมีความต้องการที่สำคัญมาก ปัจจุบัน Protected Audience ทำให้โฆษณาสามารถกําหนดเป้าหมายผู้ใช้ที่เข้าร่วมกับกลุ่มความสนใจหนึ่งๆ ผ่านกิจกรรมที่ผ่านมาบางอย่างบนเว็บ ฟีเจอร์นี้ขยาย Protected Audience เพื่อเปิดใช้การกำหนดเป้าหมายเชิงลบโดยอนุญาตให้โฆษณาใหม่กำหนดเป้าหมายเฉพาะผู้ใช้ที่ไม่ได้เข้าร่วมกลุ่มความสนใจที่ระบุ ด้วยวิธีนี้ เราจะช่วยให้ผู้ลงโฆษณากำหนดเป้าหมายกลุ่มผู้ใช้ใหม่ๆ โดยใช้แนวคิดการรักษาความเป็นส่วนตัวที่มีอยู่แล้วของ Protected Audience API
นำข้อกำหนดการเปิดใช้งานผู้ใช้สำหรับการชำระเงินออก
เราจะนำข้อกำหนดการเปิดใช้งานของผู้ใช้ในคำขอการชำระเงินและการยืนยันการชำระเงินที่ปลอดภัยออก เพื่อช่วยนักพัฒนาแอปลดความติดขัดในขั้นตอนคำขอการชำระเงิน เราได้ใช้การลดสแปมและการหลอกให้คลิกกันเพื่อลดความเสี่ยงด้านความปลอดภัยและความเป็นส่วนตัวจากการเปลี่ยนแปลงนี้
WebUSB ในผู้ปฏิบัติงานบริการส่วนขยาย
อนุญาตให้นักพัฒนาเว็บใช้ WebUSB API เมื่อตอบกลับกิจกรรมของส่วนขยายด้วยการแสดง WebUSB API ต่อ Service Worker ที่ลงทะเบียนโดยส่วนขยายเบราว์เซอร์ ขณะนี้ API นี้ยังไม่เปิดเผยต่อ Service Worker ที่ลงทะเบียนโดยเว็บไซต์
เอกสาร XML จะรวมส่วน CDATA ที่ต่อเนื่องกันเป็นโหนดเดียว
เนื่องจากข้อบกพร่องใน libxml บางครั้งส่วน CDATA ในเอกสาร XHTML อาจสร้างโหนดหลายโหนดอย่างไม่ถูกต้อง ทั้งนี้ขึ้นอยู่กับขนาดของเอกสารและตำแหน่งของส่วน CDATA ในเอกสาร เมื่อส่วน CDATA ส่วนเดียวครอบคลุมกลุ่มโปรแกรมแยกวิเคราะห์อินพุตหลายรายการ บัฟเฟอร์ libxml และจะส่งอินพุต CDATA ลงในการเรียกใช้ 300 ไบต์ ซึ่งจะเปลี่ยนส่วน CDATA ส่วนเดียวให้เป็นหลายโหนดโดยไม่คาดคิด (หากความยาวของส่วนอินพุตมากกว่า 300 ไบต์) การเปลี่ยนแปลงนี้ทำให้โหนดส่วน CDATA ข้างเคียงรวมเข้าด้วยกันเป็นส่วน CDATA เดียวในระหว่างการแยกวิเคราะห์ การดำเนินการนี้แก้ไขข้อบกพร่องของ libxml ในระหว่างการแยกวิเคราะห์ แต่จะผสานโหนดแยกต่างหากที่เขียนขึ้นด้วย ตัวอย่างเช่น <![CDATA[foo]]><!CDATA[bar]]>
จะสร้างโหนด CDATA DOM เดียวที่มีเนื้อหา "foobar": CDATA "foobar"
เปลี่ยนเงื่อนไขของกล่องโต้ตอบ beforeunload
มีการเปลี่ยนแปลงใหม่ 2 รายการเกี่ยวกับวิธีแสดงข้อความแจ้งสำหรับเหตุการณ์ beforeunload
ของกล่องโต้ตอบการยกเลิก
หากมีการเรียก event.preventDefault()
กล่องโต้ตอบการยกเลิกจะแจ้งให้คุณทราบ
หาก event.returnValue
คือสตริงว่างเปล่า ไม่ต้องแจ้งกล่องโต้ตอบการยกเลิก
ช่วงทดลองใช้จากต้นทางอยู่ระหว่างดำเนินการ
ใน Chrome 118 คุณสามารถเลือกใช้ช่วงทดลองใช้จากต้นทางใหม่ดังต่อไปนี้
การเปลี่ยนรูปแบบที่เข้ารหัส WebRTC: แก้ไขฟังก์ชันข้อมูลเมตา
เพิ่มฟีเจอร์ไปยัง Transform API ที่เข้ารหัสด้วย WebRTC ซึ่งช่วยควบคุมข้อมูลเมตาของเฟรมเสียงและวิดีโอได้ มีหลาย Use Case ที่ต้องมีการดัดแปลงสื่อที่เข้ารหัส WebRTC โดยไม่ต้องถอดรหัสก่อน ซึ่งได้แก่
- การส่งข้อมูลที่เข้ารหัสก่อนหน้านี้
- การส่งข้อมูลที่ได้รับในรูปแบบที่เข้ารหัส
- กำลังรับข้อมูลในรูปแบบที่เข้ารหัสและส่งต่อ
โดยเฉพาะอย่างยิ่ง เราต้องการรองรับกรณีการใช้การส่งต่อสื่อที่ปราศจากข้อบกพร่องของสื่อที่มาจากการเชื่อมต่อแบบเพียร์ที่ซ้ำซ้อนหลายรายการซึ่งมีเพย์โหลดสื่อเหมือนกันแต่มีข้อมูลเมตาต่างกัน
ลงทะเบียนสำหรับช่วงทดลองใช้ RTCEnencryptedFrameSetMetadata จากต้นทาง
การเลิกใช้งานและการนำออก
Chrome เวอร์ชันนี้แนะนำการเลิกใช้งานและการนำออกตามที่ระบุไว้ด้านล่าง ไปที่ ChromeStatus.com เพื่อดูรายการการเลิกใช้งานที่วางแผนไว้ การเลิกใช้งานปัจจุบัน และการนำออกก่อนหน้านี้
Chrome รุ่นนี้จะนำฟีเจอร์ต่อไปนี้ออก
การนำคีย์เวิร์ดที่ปรากฏที่ไม่เป็นไปตามมาตรฐานบางรายการออก
ใน Chrome 118 ระบบจะปิดใช้คีย์เวิร์ด appearance
ที่ไม่เป็นไปตามมาตรฐานซึ่งมีการใช้งานน้อยที่สุด เมื่อปิดใช้งานฟีเจอร์แล้ว ระบบจะไม่สนใจพร็อพเพอร์ตี้ลักษณะที่ปรากฏหากใช้คีย์เวิร์ดนั้นเป็นค่า คีย์เวิร์ดที่ปิดใช้งานใน Chrome 118 คือคีย์เวิร์ดที่มีการใช้งานน้อยกว่า 0.001% ดังนี้
media-slider
media-sliderthumb
media-volume-slider
media-volume-sliderthumb
sliderthumb-horizontal
sliderthumb-vertical
ข้อมูลเบื้องต้น
เนื่องจากควรสนับสนุนเฉพาะคีย์เวิร์ด appearance
มาตรฐานเท่านั้น เราจะนำคีย์เวิร์ด appearance
(และ -webkit-appearance
) ที่ไม่เป็นไปตามมาตรฐานออก รายการทั้งหมดมีดังนี้
inner-spin-button
media-slider
media-sliderthumb
media-volume-slider
media-volume-sliderthumb
push-button
searchfield-cancel-button
slider-horizontal
sliderthumb-horizontal
sliderthumb-vertical
square-button
โปรดทราบว่าระบบจะไม่นำค่า slider-vertical
ออก
แพตช์นั้นใช้เพื่ออนุญาตประเภทธุรกิจ <input type=range>
จะเป็น
นำออกเมื่อมีการใช้โหมดการเขียนในแนวตั้งของการควบคุมแบบฟอร์มอย่างเต็มรูปแบบ
ก่อนที่จะปิดใช้งาน หากใช้คีย์เวิร์ดใดๆ ข้างต้น คำเตือนของคอนโซลจะแสดงขึ้นมา แต่ระบบจะจดจำคีย์เวิร์ดเป็นค่าที่ถูกต้อง