Chrome 118 เบต้า

รูปแบบที่กำหนดขอบเขตสำหรับ CSS, ฟีเจอร์สื่อเพิ่มเติม, คอนเทนเนอร์ที่เลื่อนได้ของแป้นพิมพ์ และอื่นๆ

การเปลี่ยนแปลงที่อธิบายจะมีผลกับ Chrome เวอร์ชันเบต้ารุ่นล่าสุดสำหรับ Android, ChromeOS, Linux, macOS และ Windows เว้นแต่จะระบุไว้เป็นอย่างอื่น ดูข้อมูลเพิ่มเติมเกี่ยวกับฟีเจอร์ต่างๆ ที่ระบุไว้ที่นี่ผ่านลิงก์ที่ให้ไว้หรือจากรายการใน ChromeStatus.com ทั้งนี้ Chrome 118 เป็นเวอร์ชันเบต้าตั้งแต่วันที่ 13 กันยายน 2023 คุณสามารถดาวน์โหลดเวอร์ชันล่าสุดได้ที่ Google.com สำหรับเดสก์ท็อปหรือ Google Play Store บน Android

CSS

รุ่นนี้ได้เพิ่มฟีเจอร์ CSS ใหม่ 4 รายการ

รูปแบบที่กำหนดขอบเขต

กฎ @scope ช่วยให้นักพัฒนาแอปกำหนดขอบเขตของกฎรูปแบบไปยังรูทที่กำหนดขอบเขตที่กำหนด และจัดรูปแบบองค์ประกอบตามความใกล้เคียงของรากที่กำหนดขอบเขตนั้น

ค่าที่เกี่ยวข้องกับโฟลว์แบบตรรกะ CSS

เพิ่มค่าใหม่ต่อไปนี้ลงในพร็อพเพอร์ตี้ CSS ที่มีอยู่

  • float: inline-start
  • float: inline-end
  • clear: inline-start
  • clear: inline-end
  • resize: block
  • resize: inline

คีย์เวิร์ดที่มีทิศทางแบบอ้างอิงตามทิศทางเหล่านี้จะไปเป็นค่าจริง โดยขึ้นอยู่กับโหมดการเขียนหรือทิศทางการเขียนขององค์ประกอบหรือบล็อกขององค์ประกอบนั้น

คำค้นหาสื่อ: ฟีเจอร์ Preferred-reduced-transparency

เพิ่มฟีเจอร์สื่อ prefers-reduced-transparency ซึ่งช่วยให้นักพัฒนาแอปปรับเนื้อหาเว็บตามความต้องการที่ผู้ใช้เลือกไว้เพื่อให้มีความโปร่งใสน้อยลงในระบบปฏิบัติการ เช่น การตั้งค่าลดความโปร่งใสใน macOS ตัวเลือกที่ใช้ได้คือ reduce หรือ no-preference

รองรับกล่องเส้นโครงร่าง กล่องเนื้อหา และกล่องเส้นขอบในคุณสมบัติ CSS กล่องแปลงข้อมูล

การเพิ่มการสนับสนุนนี้จะทำให้สามารถเปลี่ยนวิธีคำนวณกล่องอ้างอิงสำหรับพร็อพเพอร์ตี้ transform ได้ การดำเนินการนี้จะทำให้เกิดการเปลี่ยนรูปแบบหรือเอฟเฟกต์กราฟิกเพิ่มเติม ตัวอย่างเช่น การหมุนรอบจุดในช่องเนื้อหา โดยที่ความกว้างของขอบขององค์ประกอบไม่มีผลต่อผลลัพธ์ หรือในกรณีที่เส้นโครงร่างขององค์ประกอบ (SVG) ควรมีอิทธิพลต่อผลลัพธ์ เช่น เมื่อหมุนเส้นโครงร่างรอบๆ จุดกึ่งกลาง ซึ่งรวมถึงเส้นโครงร่าง

HTML

คอนเทนเนอร์การเลื่อนที่โฟกัสได้ของแป้นพิมพ์

ปรับปรุงการช่วยเหลือพิเศษโดยทำให้คอนเทนเนอร์แบบเลื่อนโฟกัสได้โดยใช้การนำทางโฟกัสตามลำดับ ก่อนการเปลี่ยนแปลงนี้ แป้นแท็บจะไม่โฟกัสตัวเลื่อน เว้นแต่ว่าจะตั้งค่า 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 สอดคล้องกับลักษณะการทำงานที่ระบุอยู่ใน RFC6265bi ฉบับร่างล่าสุดของ คุณสามารถปิดการเปลี่ยนแปลงนี้ได้โดยใช้ --disable-features=BlockTruncatedCookies หรือนโยบายองค์กร BlockTruncatedCookies ซึ่งจะมีอยู่หลายเหตุการณ์ในกรณีที่การเปลี่ยนแปลงนี้ก่อให้เกิดความเสียหาย

ขนาดแบบอักษรขั้นต่ำที่สอดคล้องกันในทุกภาษา

เปลี่ยนการตั้งค่าเริ่มต้นของขนาดแบบอักษรขั้นต่ำให้ปิดอยู่โดยค่าเริ่มต้น 7 ภาษา (อาหรับ ฟาร์ซี ญี่ปุ่น เกาหลี ไทย จีนตัวย่อ และตัวเต็ม) เพื่อปรับปรุงความสามารถในการทำงานร่วมกันและการเข้าถึง ก่อนการเปลี่ยนแปลงนี้ การตั้งค่านี้จะปิดอยู่โดยค่าเริ่มต้นสำหรับทุกภาษา ยกเว้น 7 ภาษาที่ระบุไว้ การเปลี่ยนแปลงนี้ช่วยให้ภาษาเหล่านี้สอดคล้องกับภาษาอื่นๆ โปรดทราบว่า การดำเนินการนี้ไม่ใช่การเปลี่ยนคุณลักษณะของขนาดแบบอักษรขั้นต่ำ ซึ่งจะพร้อมใช้งานโดยไม่ต้องเปลี่ยนแปลงใดๆ สำหรับการเข้าถึงและความสะดวกในการอ่าน

ตรวจหาการเปลี่ยน UA ในการไปยังส่วนต่างๆ ของเอกสารเดียวกัน

การเปลี่ยนภาพที่ลื่นไหลขณะผู้ใช้ไปยังส่วนต่างๆ บนเว็บสามารถลดภาระของการรับรู้ได้ด้วยการช่วยให้ผู้ใช้เข้าใจบริบท อย่างไรก็ตาม ผู้ใช้จะได้รับประสบการณ์ที่ไม่ดีหากทั้งผู้สร้างเว็บไซต์และ UA เพิ่มการเปลี่ยนเหล่านี้ การเปลี่ยนรุ่นอาจขัดแย้งกันและก่อให้เกิดความสับสนสำหรับผู้ใช้ API นี้จะหลีกเลี่ยงกรณีเช่นนี้เพื่อให้แน่ใจว่าจะดำเนินการเปลี่ยนภาพได้ครั้งละ 1 ภาพเท่านั้น 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"

เปลี่ยนเงื่อนไขของกล่องโต้ตอบก่อนยกเลิกการโหลดของตัวแฮนเดิล

มีการเปลี่ยนแปลงใหม่ 2 รายการในการแสดงข้อความแจ้งในกล่องโต้ตอบการยกเลิกสําหรับเหตุการณ์ beforeunload

หากมีการเรียก event.preventDefault() ให้แจ้งกล่องโต้ตอบการยกเลิก หาก event.returnValue เป็นสตริงว่างเปล่า ไม่ต้องแสดงกล่องโต้ตอบการยกเลิก

ช่วงทดลองใช้จากต้นทางอยู่ระหว่างดำเนินการ

ใน Chrome 118 คุณเลือกใช้ช่วงทดลองใช้จากต้นทางใหม่ต่อไปนี้ได้

การเปลี่ยนรูปแบบที่เข้ารหัส WebRTC: แก้ไขฟังก์ชันข้อมูลเมตา

เพิ่มฟีเจอร์ไปยัง WebRTC Encrypted Transform API ที่อนุญาตให้จัดการข้อมูลเมตาของเฟรมเสียงและวิดีโอ พบว่ามี Use Case จำนวนหนึ่งที่จำเป็นต้องปรับเปลี่ยนสื่อที่เข้ารหัส WebRTC โดยไม่ต้องถอดรหัสก่อน ซึ่งรวมถึงการใช้งานดังต่อไปนี้

  • การส่งข้อมูลที่มีการเข้ารหัสก่อนหน้านี้
  • กำลังส่งข้อมูลที่ได้รับในรูปแบบที่เข้ารหัส
  • กำลังรับข้อมูลในรูปแบบที่เข้ารหัสและส่งต่อ

โดยเฉพาะอย่างยิ่ง เราต้องการรองรับกรณีการใช้งานของการส่งต่อที่ไม่มีข้อบกพร่องของสื่อที่มาจากการเชื่อมต่อเพียร์ที่ซ้ำซ้อนหลายรายการซึ่งมีเพย์โหลดสื่อเดียวกันแต่มีข้อมูลเมตาต่างกัน

ลงทะเบียนรับช่วงทดลองใช้ RTCEncryptedFrameSetMetadata จากต้นทาง

การเลิกใช้งานและการนำออก

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> และจะถูกนำออกเมื่อมีการใช้โหมดการเขียนแนวตั้งของตัวควบคุมแบบฟอร์มอย่างเต็มรูปแบบ

ก่อนที่จะมีการปิดใช้งาน หากใช้คีย์เวิร์ดใดๆ ข้างต้น ระบบจะแสดงคำเตือนในคอนโซล แต่ระบบจะถือว่าคีย์เวิร์ดนั้นเป็นค่าที่ถูกต้อง