Chrome 136

วันที่เผยแพร่เวอร์ชันเสถียร: 29 เมษายน 2025

การเปลี่ยนแปลงต่อไปนี้มีผลกับรุ่นในช่องเสถียรของ Chrome 136 สำหรับ Android, ChromeOS, Linux, macOS และ Windows เว้นแต่จะระบุไว้เป็นอย่างอื่น

HTML และ DOM

ภาษาที่รองรับสำหรับ CanvasTextDrawingStyles

องค์ประกอบ DOM <canvas> เช่นเดียวกับองค์ประกอบ DOM ทั้งหมด จะยอมรับแอตทริบิวต์ lang ที่ใช้เพื่อกำหนดการจัดการเฉพาะภาษาสำหรับการเลือกแบบอักษร (เมื่อแบบอักษรมีอักขระเฉพาะภาษา) เบราว์เซอร์จะยึดตามแอตทริบิวต์นี้ อย่างไรก็ตาม เมื่อสร้าง OffscreenCanvas จะไม่มีวิธีตั้งค่าข้อมูลภาษา ซึ่งอาจส่งผลให้เกิดสถานะที่แคนวาสนอกหน้าจอแสดงผลลัพธ์ที่แตกต่างจากแคนวาสที่ใช้เอาต์พุต ฟีเจอร์นี้จะเพิ่มแอตทริบิวต์ lang IDL ลงใน CanvasTextDrawingStyles เพื่อให้นักพัฒนาแอปควบคุมภาษาสําหรับการวาดข้อความและเมตริกได้โดยตรง

การติดตามข้อบกพร่อง #385006131 | รายการ ChromeStatus.com | ข้อมูลจำเพาะ

CSS และ UI

พร็อพเพอร์ตี้ dynamic-range-limit

ช่วยให้หน้าเว็บจำกัดความสว่างสูงสุดของเนื้อหา HDR ได้

การติดตามข้อบกพร่อง #1470298 | รายการ ChromeStatus.com | ข้อมูลจำเพาะ

ระบบจะจัดรูปแบบองค์ประกอบ Anchor เป็น:visitedเฉพาะในกรณีที่มีการคลิกจากเว็บไซต์ระดับบนสุดและต้นทางเฟรมนี้มาก่อนเท่านั้น เพื่อไม่ให้ประวัติการท่องเว็บของผู้ใช้รั่วไหล

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

การติดตามข้อบกพร่อง #1448609 | รายการ ChromeStatus.com | ข้อมูลจำเพาะ

ไม่มีคำนำหน้า print-color-adjust

พร็อพเพอร์ตี้ print-color-adjust ช่วยให้คุณปรับสีในหน้าเว็บที่พิมพ์ได้ ซึ่งเหมือนกับ -webkit-print-color-adjust ที่ Chrome รองรับอยู่แล้ว แต่ใช้ชื่อที่เป็นมาตรฐาน

ระบบจะไม่นำเวอร์ชันที่มีคำนำหน้า -webkit- ออก

เอกสาร MDN | ข้อบกพร่องการติดตาม #376381169 | รายการ ChromeStatus.com | ข้อมูลจำเพาะ

เปลี่ยนชื่อ string attr() เป็น raw-string

กลุ่มทํางาน CSS ได้ตัดสินใจที่จะแทนที่ประเภท string attr() ด้วย raw-string

ดังนั้นตั้งแต่ Chrome 136 attr(data-foo string) จะกลายเป็น attr(data-foo raw-string)

การติดตามข้อบกพร่อง #400981738 | รายการ ChromeStatus.com | ข้อมูลจำเพาะ

var() สำรองที่ไม่คำนึงถึงประเภท

ส่วนที่เป็นค่าสำรองของฟังก์ชัน var() จะไม่ตรวจสอบกับประเภทของพร็อพเพอร์ตี้ที่กำหนดเองที่อ้างอิง

การติดตามข้อบกพร่อง #372475301 | รายการ ChromeStatus.com

Web API

ส่งเหตุการณ์การคลิกไปยังเคอร์เซอร์ที่จับภาพไว้

หากมีการจับเคอร์เซอร์ขณะที่ระบบส่งเหตุการณ์ pointerup ระบบจะส่งเหตุการณ์ click ไปยังเป้าหมายที่จับได้แทนบรรพบุรุษร่วมที่ใกล้ที่สุดของเหตุการณ์ pointerdown และ pointerup ตามข้อกําหนดของเหตุการณ์ UI

สําหรับเคอร์เซอร์ที่ไม่มีการจับ เป้าหมาย click จะยังคงเหมือนเดิม

การติดตามข้อบกพร่อง #40851596 | รายการ ChromeStatus.com | ข้อมูลจำเพาะ

คำแนะนำการคอมไพล์ที่ชัดเจนด้วยความคิดเห็นที่ทำงานแบบอัจฉริยะ

อนุญาตให้แนบข้อมูลเกี่ยวกับฟังก์ชันที่ควรแยกวิเคราะห์และคอมไพล์ในไฟล์ JavaScript อย่างเร่งด่วน

ระบบจะเข้ารหัสข้อมูลเป็นความคิดเห็นแบบมายากล

การติดตามข้อบกพร่อง #13917 | รายการ ChromeStatus.com | ข้อมูลจำเพาะ

รวมตัวเริ่มการนําทางไว้ในคีย์พาร์ติชันแคช HTTP

รูปแบบการกุญแจแคช HTTP ของ Chrome ได้รับการอัปเดตให้รวมis-cross-site-main-frame-navigationบูลีนเพื่อลดการโจมตีที่มีการรั่วไหลข้ามเว็บไซต์ซึ่งเกี่ยวข้องกับการนําทางระดับบนสุด

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

การติดตามข้อบกพร่อง #398784714 | รายการ ChromeStatus.com | ข้อมูลจำเพาะ

กลุ่มเป้าหมายที่ได้รับการคุ้มครอง: ตัวช่วยแปลงข้อความ

สคริปต์การเสนอราคาและการให้คะแนนกลุ่มเป้าหมายที่ได้รับการคุ้มครองซึ่งอินเทอร์เฟซกับ WebAssembly ต้องแปลงข้อมูลประเภทสตริงเป็น (และจาก) อาร์เรย์ไบต์อย่างมีประสิทธิภาพ (เช่น เพื่อส่งสตริงเข้าและออกจาก WebAssembly ด้วย ArrayBuffer "memory") ซึ่งจะมีฟังก์ชันสแตนด์อโลน 2 รายการ ได้แก่ protectedAudience.encodeUtf8 และ protectedAudience.decodeUtf8 เพื่อทํางานเหล่านี้ได้มีประสิทธิภาพมากกว่าการทําใน JavaScript ประมาณ 1 ทศนิยม

รายการ ChromeStatus.com

RegExp.escape

RegExp.escape เป็นเมธอดแบบคงที่ที่ใช้สตริงและแสดงผลเวอร์ชันที่หลีกซึ่งอาจใช้เป็นรูปแบบภายในนิพจน์ทั่วไป

เช่น

const str = prompt("Please enter a string");
const escaped = RegExp.escape(str);
const re = new RegExp(escaped, 'g'); // handles reg exp special tokens with the replacement.
console.log(ourLongText.replace(re));

รายการ ChromeStatus.com | ข้อมูลจำเพาะ

กฎการคาดเดา: ช่องแท็ก

ซึ่งจะช่วยให้นักพัฒนาแอปเพิ่มช่องแท็กลงในกฎการคาดการณ์ได้ ช่องที่ไม่บังคับนี้ใช้ติดตามแหล่งที่มาของกฎการเก็งกำไรได้ เช่น เพื่อจัดการกับคีย์เหล่านั้นในเซิร์ฟเวอร์สื่อกลางในลักษณะที่ต่างกัน ระบบจะส่งแท็กที่เชื่อมโยงกับการคาดการณ์พร้อมกับส่วนหัว Sec-Speculation-Tags

การติดตามข้อบกพร่อง #381687257 | รายการ ChromeStatus.com | ข้อมูลจำเพาะ

อัปเดต ProgressEvent ให้ใช้ประเภท double สำหรับ loaded และ total

ProgressEvent มีแอตทริบิวต์ loaded และ total ที่ระบุความคืบหน้า และตอนนี้ประเภทคือ unsigned long long

เมื่อใช้ฟีเจอร์นี้ ระบบจะเปลี่ยนประเภทของแอตทริบิวต์ 2 รายการนี้เป็น double instead ซึ่งช่วยให้นักพัฒนาแอปควบคุมค่าได้มากขึ้น ตัวอย่างเช่น ตอนนี้นักพัฒนาแอปสามารถสร้าง ProgressEvent ที่มี total เป็น 1 และ loaded ที่เพิ่มขึ้นจาก 0 เป็น 1 อย่างช้าๆ ซึ่งสอดคล้องกับลักษณะการทำงานเริ่มต้นขององค์ประกอบ HTML <progress> หากไม่ได้ระบุแอตทริบิวต์ max

รายการใน ChromeStatus.com | ข้อมูลจำเพาะ

ความเป็นส่วนตัวและความปลอดภัย

รายงานนโยบายสิทธิ์สําหรับ iframe

เปิดตัวการละเมิดประเภทใหม่ที่เรียกว่า "การละเมิดนโยบายสิทธิ์ที่อาจเกิดขึ้น" ซึ่งจะดูเฉพาะนโยบายสิทธิ์ (รวมถึงนโยบายแบบรายงานเท่านั้น) และแอตทริบิวต์ allow ที่ตั้งค่าใน iframe เพื่อตรวจหาความขัดแย้งระหว่างนโยบายสิทธิ์ที่บังคับใช้กับสิทธิ์ที่ส่งไปยัง iframe

การติดตามข้อบกพร่อง #40941424 | รายการ ChromeStatus.com | ข้อกำหนด

ลดการระบุตัวตนในข้อมูลส่วนหัว Accept-Language

ลดปริมาณข้อมูลที่สตริงค่าส่วนหัว Accept-Language แสดงในคําขอ HTTP และใน navigator.languages ตอนนี้ Chrome จะส่งภาษาที่ผู้ใช้ต้องการมากที่สุดในส่วนหัว Accept-Language แทนที่จะส่งรายการภาษาที่ผู้ใช้ต้องการทั้งหมดในคำขอ HTTP แต่ละรายการ

การติดตามข้อบกพร่อง #1306905 | รายการ ChromeStatus.com

Identity

การอัปเดต FedCM

อนุญาตให้ FedCM แสดงผู้ให้บริการข้อมูลประจำตัวหลายรายในกล่องโต้ตอบเดียวกัน โดยให้ผู้ให้บริการทั้งหมดอยู่ในget()การเรียกใช้เดียวกัน วิธีนี้ช่วยให้นักพัฒนาแอปนำเสนอผู้ให้บริการข้อมูลประจำตัวที่รองรับทั้งหมดแก่ผู้ใช้ได้อย่างสะดวก

Chrome 136 ยังนำการรองรับเพิ่มบัญชีอื่นในโหมด Passive ของ FedCM ออกด้วย ฟีเจอร์นี้ช่วยให้แสดงปุ่มใช้บัญชีอื่นควบคู่ไปกับบัญชี IdP อื่นๆ ในเครื่องมือเลือกได้ ปัจจุบันฟีเจอร์นี้ไม่มีการใช้งาน และการพูดคุยเรื่อง UX ทำให้เราเชื่อว่าการรองรับฟีเจอร์นี้จะทำให้ขั้นตอนการดำเนินการซับซ้อนขึ้นโดยไม่มีประโยชน์มากนัก ฟีเจอร์นี้จะยังคงทำงานในโหมดที่ใช้งานอยู่ของ FedCM

การติดตามข้อบกพร่อง #1348262 | รายการ ChromeStatus.com | ข้อมูลจำเพาะ

การสร้างแบบมีเงื่อนไขของการตรวจสอบสิทธิ์บนเว็บ (การอัปเกรดพาสคีย์)

คำขอสร้างแบบมีเงื่อนไขของ WebAuthn ช่วยให้เว็บไซต์อัปเกรดข้อมูลเข้าสู่ระบบที่เป็นรหัสผ่านที่มีอยู่เป็นพาสคีย์ได้

การติดตามข้อบกพร่อง #377758786 | รายการ ChromeStatus.com | ข้อมูลจำเพาะ

รูปภาพและสื่อ

AudioContext สถานะถูกขัดจังหวะ

เพิ่มสถานะ "interrupted" ไปยัง AudioContextState สถานะใหม่นี้ช่วยให้ User Agent หยุดเล่นชั่วคราวในระหว่างการเข้าถึงเสียงแบบพิเศษ (VoIP) หรือเมื่อปิดฝาแล็ปท็อป

การติดตามข้อบกพร่อง #374805121 | รายการ ChromeStatus.com | ข้อมูลจำเพาะ

การควบคุมพื้นผิวที่บันทึกไว้

Web API ที่ช่วยให้เว็บแอปพลิเคชันดำเนินการต่อไปนี้ได้

  1. ส่งต่อเหตุการณ์ของล้อไปยังแท็บที่บันทึกไว้
  2. อ่านและเปลี่ยนระดับการซูมของแท็บที่บันทึกไว้

การติดตามข้อบกพร่อง #1466247 | รายการ ChromeStatus.com | ข้อมูลจำเพาะ

CapturedSurfaceResolution

แสดงสัดส่วนพิกเซลของพื้นผิวที่จับภาพขณะแชร์หน้าจอ

ฟีเจอร์นี้ช่วยให้แอปพลิเคชันประหยัดทรัพยากรของระบบหรือปรับคุณภาพเพื่อแลกกับแบนด์วิดท์ตามความละเอียดเชิงกายภาพและเชิงตรรกะของพื้นผิวที่บันทึก

การติดตามข้อบกพร่อง #383946052 | รายการ ChromeStatus.com | ข้อมูลจำเพาะ

การรองรับตัวแปลงรหัส H265 (HEVC) ใน WebRTC

หลังจากการเปลี่ยนแปลงนี้ HEVC จะเข้าร่วมกับ VP8, H.264, VP9 และ AV1 ในฐานะตัวแปลงรหัสที่รองรับใน WebRTC คุณสามารถค้นหาการรองรับได้โดยใช้ MediaCapabilities API

การติดตามข้อบกพร่อง #391903235 | รายการ ChromeStatus.com | ข้อมูลจำเพาะ

การอัปเดตการรองรับตัวแปลงรหัส H26x สำหรับ MediaRecorder

ตอนนี้ MediaRecorder API ของ Chromium รองรับการเข้ารหัส HEVC แล้ว โดยเปิดตัวสตริงตัวแปลงรหัส hvc1.* และเพิ่มตัวแปลงรหัสใหม่ (hev1.* และ avc3.*) ที่รองรับวิดีโอความละเอียดแบบปรับได้ในรูปแบบ MP4

เพิ่มการรองรับการเข้ารหัสแพลตฟอร์ม HEVC ใน WebCodecs ใน Chromium M130 เราได้เพิ่มการรองรับ MediaRecorder API ใน Chromium เพื่อติดตามผล ตอนนี้ API รองรับทั้งประเภทตัวรวมไฟล์ MP4 และ Matroska ที่มีข้อกำหนดประเภท mime ที่แตกต่างกันสำหรับ HEVC และ H.264 ระบบจะรองรับการเข้ารหัส HEVC เฉพาะในกรณีที่อุปกรณ์และระบบปฏิบัติการของผู้ใช้มีความสามารถที่จำเป็น

รายการ ChromeStatus.com

ใช้ DOMPointInit สำหรับ getCharNumAtPosition, isPointInFill, isPointInStroke

การเปลี่ยนแปลงนี้จะทำให้โค้ด Chromium สอดคล้องกับข้อกำหนดล่าสุดของ W3C สำหรับ SVGGeometryElement และ SVGPathElement ในแง่ของการใช้ DOMPointInit แทน SVGPoint สำหรับ getCharNumAtPosition, isPointInFill, isPointInStroke

การติดตามข้อบกพร่อง #40572887 | รายการ ChromeStatus.com | ข้อมูลจำเพาะ

WebGPU: แอตทริบิวต์ GPUAdapterInfo isFallbackAdapter

แอตทริบิวต์บูลีน GPUAdapterInfo isFallbackAdapter จะระบุว่าอะแดปเตอร์มีข้อจำกัดด้านประสิทธิภาพที่สำคัญหรือไม่ เพื่อแลกกับการเข้ากันได้ที่กว้างขึ้น ลักษณะการทำงานที่คาดการณ์ได้มากขึ้น หรือความเป็นส่วนตัวที่ดีขึ้น โปรดทราบว่าอะแดปเตอร์สำรองอาจไม่อยู่ในระบบบางระบบ

การติดตามข้อบกพร่อง #403172841 | รายการ ChromeStatus.com | ข้อมูลจำเพาะ

การเปลี่ยนแปลงของเบราว์เซอร์

แถบเลื่อนที่ใช้งานง่าย

ฟีเจอร์นี้จะปรับปรุงแถบเลื่อนของ Chromium (ทั้งแบบวางซ้อนและไม่วางซ้อน) ใน Windows และ Linux ให้ทันสมัยเพื่อให้เข้ากับภาษาการออกแบบ Fluent Design ของ Windows 11

ระบบจะเปิดใช้แถบเลื่อน Fluent ที่ไม่วางซ้อนใน Linux และ Windows โดยค่าเริ่มต้น การเปลี่ยนแปลงนี้มีผลกับ Linux ด้วย เนื่องจากการออกแบบแถบเลื่อนของ Chromium ใน Linux ที่ผ่านมาสอดคล้องกับการออกแบบใน Windows เรากำลังพิจารณาวิธีแสดงการเปิดใช้แถบเลื่อน Fluent แบบวางซ้อน

การติดตามข้อบกพร่อง #1292117 | รายการ ChromeStatus.com

ช่วงทดลองใช้จากต้นทาง

Audio Output Devices API: setDefaultSinkId()

ฟีเจอร์นี้จะเพิ่ม setDefaultSinkId() ลงใน MediaDevices ซึ่งช่วยให้เฟรมระดับบนสุดเปลี่ยนอุปกรณ์เอาต์พุตเสียงเริ่มต้นที่ใช้โดยเฟรมย่อยได้

การทดลองใช้รุ่นเบต้าของ Origin | รายการ ChromeStatus.com | ข้อกำหนด

เปิดใช้เว็บแอปพลิเคชันเพื่อทำความเข้าใจการกำหนดเวลาประสิทธิภาพแบบ 2 โหมด

เว็บแอปพลิเคชันอาจประสบปัญหาการกระจายแบบ 2 โหมดในประสิทธิภาพการโหลดหน้าเว็บเนื่องจากปัจจัยที่อยู่นอกเหนือการควบคุมของเว็บแอปพลิเคชัน เช่น

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

ช่อง confidence ใหม่บนออบเจ็กต์ PerformanceNavigationTiming จะช่วยให้นักพัฒนาซอฟต์แวร์แยกแยะได้ว่าเวลาในการนําทางแสดงถึงเว็บแอปพลิเคชันของตนหรือไม่

ช่วงทดลองใช้ Origin | การติดตามข้อบกพร่อง #1413848 | รายการ ChromeStatus.com | ข้อมูลจำเพาะ

อัปเดตการใช้งานการแสดงผลข้อความ Canvas

การเปลี่ยนแปลงนี้ไม่ได้แสดงบนเว็บ

การใช้งาน CanvasRenderingContext2D measureText(), fillText() และ strokeText() มีการเปลี่ยนแปลงอย่างมาก ซึ่งอาจส่งผลต่อประสิทธิภาพ เราจึงต้องการทดลองใช้เวอร์ชันต้นทางเพื่อให้แอปพลิเคชันที่ใช้ Canvas มากได้ลองใช้งานเวอร์ชันใหม่

การทดสอบเวอร์ชันเบต้าของต้นทาง | การติดตามข้อบกพร่อง #389726691 | รายการ ChromeStatus.com

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

นำ HTMLFencedFrameElement.canLoadOpaqueURL() ออก

เมธอด HTMLFencedFrameElement canLoadOpaqueURL() ถูกแทนที่ด้วย navigator.canLoadAdAuctionFencedFrame() ในปี 2023 และการเรียกใช้เมธอดดังกล่าวส่งผลให้คอนโซลแสดงคำเตือนการเลิกใช้งานนับตั้งแต่ที่ชี้ไปยัง API ใหม่ วิธีการนี้ถูกนําออกจาก Chrome 136 แล้ว

รายการ ChromeStatus.com