Chrome 138 เบต้า

เผยแพร่: 28 พฤษภาคม 2025

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

CSS และ UI

การเปิดตัวนี้เพิ่มฟีเจอร์ CSS และ UI ใหม่ 6 รายการ

คีย์เวิร์ดการกำหนดขนาด CSS stretch

คีย์เวิร์ดสำหรับพร็อพเพอร์ตี้การกำหนดขนาด CSS (เช่น width และ height) ที่ อนุญาตให้องค์ประกอบขยายเพื่อเติมพื้นที่ว่างที่มีอยู่ของบล็อกที่มี อย่างแม่นยำ ซึ่งคล้ายกับ 100% ยกเว้นว่าขนาดที่ได้จะใช้กับ กรอบระยะขอบขององค์ประกอบแทนกรอบที่ระบุโดย box-sizing การใช้คีย์เวิร์ดนี้จะช่วยให้องค์ประกอบรักษามาร์จิ้นไว้ได้ในขณะที่ยังคงมีขนาดใหญ่ที่สุดเท่าที่จะเป็นไปได้

ฟังก์ชันที่เกี่ยวข้องกับเครื่องหมาย abs() และ sign() จะคำนวณฟังก์ชันต่างๆ ที่เกี่ยวข้องกับเครื่องหมายของอาร์กิวเมนต์

ตัวแปร env ของ CSS สำหรับการปรับขนาดแบบอักษรระดับระบบปฏิบัติการ

แสดงขนาดแบบอักษรที่ผู้ใช้ต้องการต่อ CSS ปัจจุบันหน้าเว็บไม่สามารถตรวจหาได้ว่าผู้ใช้ได้เปลี่ยนขนาดแบบอักษรที่ต้องการด้วยค่ากำหนดของระบบปฏิบัติการหรือไม่ ตัวแปรสภาพแวดล้อม CSS นี้จะแสดง สเกลที่ผู้ใช้เลือก

CSS sibling-index() และ sibling-count()

ฟังก์ชัน sibling-index() และ sibling-count() สามารถใช้เป็นจำนวนเต็มในค่าพร็อพเพอร์ตี้ CSS เพื่อจัดรูปแบบองค์ประกอบตามตำแหน่งขององค์ประกอบในกลุ่มองค์ประกอบที่อยู่ระดับเดียวกัน หรือจำนวนองค์ประกอบที่อยู่ระดับเดียวกันทั้งหมดตามลำดับ ฟังก์ชันเหล่านี้สามารถใช้เป็นค่าจำนวนเต็มได้โดยตรง แต่จะน่าสนใจยิ่งขึ้นเมื่อใช้ภายในนิพจน์ calc()

li {
  animation-delay: calc(0.1s * sibling-index());
}

สัญกรณ์ฟังก์ชันความคืบหน้าของการประมาณค่า: ฟังก์ชัน CSS progress()

progress() สัญกรณ์ฟังก์ชันคือฟังก์ชันทางคณิตศาสตร์ที่แสดงผลค่า <number> ซึ่งแสดงถึงตำแหน่งของการคำนวณหนึ่ง (ค่าความคืบหน้า) ระหว่างการคำนวณอื่นๆ 2 รายการ (ค่าเริ่มต้นของความคืบหน้าและค่าสิ้นสุดของความคืบหน้า)

Viewport Segments Enumeration API

Viewport Segments API ช่วยให้นักพัฒนาแอปปรับเลย์เอาต์เว็บให้เหมาะกับอุปกรณ์พับได้ กลุ่มวิวพอร์ตจะกำหนดตำแหน่งและขนาดของ ภูมิภาคที่แยกกันอย่างเป็นตรรกะของวิวพอร์ต ระบบจะสร้างกลุ่ม Viewport เมื่อ ฮาร์ดแวร์อย่างน้อย 1 รายการ (เช่น รอยพับหรือ บานพับระหว่างจอแสดงผลแยกกัน) ทำหน้าที่เป็นตัวคั่น โดยกลุ่มคือภูมิภาค ของ Viewport ที่นักพัฒนาแอปสามารถถือว่าเป็นส่วนที่แยกจากกันโดยตรรกะ

Web API

เพิ่มการรองรับข้อมูลเมตาการวางแนวเฟรมวิดีโอลงใน WebCodecs

แนะนําค่า rotation: int และ flip: bool ให้กับอินเทอร์เฟซต่างๆ ที่เกี่ยวข้องกับวิดีโอใน WebCodecs เพื่อให้นักพัฒนาซอฟต์แวร์ทํางานกับแหล่งที่มาของเฟรมที่มีการวางแนวได้ (เช่น กล้อง Android และสื่อบางอย่าง) VideoFrame อินเทอร์เฟซจะเพิ่มความสามารถในการสร้าง VideoFrame ที่มีการหมุนและการ พลิกตามต้องการ รวมถึงตัวช่วยในการเข้าถึงข้อมูลนี้ในออบเจ็กต์ VideoFrame ออบเจ็กต์ VideoDecoderConfig จะมีฟิลด์ rotation และ flip ที่ปล่อยออกมา ในออบเจ็กต์ VideoFrame ที่ถอดรหัสโดยอัตโนมัติ คลาส VideoEncoder มีกลไกสำหรับส่งข้อมูลการหมุนและการพลิกจาก encode() ไปยัง VideoDecoderConfig ซึ่งปล่อยออกมาเป็นส่วนหนึ่งของ EncodedVideoChunkMetadata หากเรียกใช้ encode() ด้วยเฟรมที่มีการวางแนวต่างกัน ระบบจะส่งข้อยกเว้นที่ไม่ร้ายแรง คุณสามารถใช้วิธี configure() เพื่อรีเซ็ต การวางแนวที่อนุญาตได้

Crash Reporting API: is_top_level และ visibility_state

ฟีเจอร์นี้จะเพิ่มฟิลด์สตริง is_top_level และ visibility_state ลงในเนื้อหา API การรายงานข้อขัดข้องที่ส่งไปยังปลายทางการรายงานเริ่มต้นสำหรับรายงานข้อขัดข้อง

กำหนดเป็นอักขระหลีก < และ > ในแอตทริบิวต์เมื่อทำการซีเรียลไลซ์

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

นโยบายความสมบูรณ์ของสคริปต์

Subresource-Integrity (SRI) ช่วยให้นักพัฒนาแอปมั่นใจได้ว่าชิ้นงานที่ต้องการโหลดเป็นชิ้นงานที่กำลังโหลดอยู่จริง แต่ปัจจุบันนักพัฒนาแอปยังไม่มีวิธีตรวจสอบว่าสคริปต์ทั้งหมดได้รับการตรวจสอบโดยใช้ SRI ส่วนหัว Integrity-Policy ช่วยให้นักพัฒนาแอปยืนยันได้ว่าทรัพยากรทุกรายการของประเภทที่กำหนดต้องได้รับการตรวจสอบความสมบูรณ์ หากพยายามโหลดทรัพยากรประเภทนั้นโดยไม่มีข้อมูลเมตาความสมบูรณ์ ความพยายามดังกล่าวจะล้มเหลวและทริกเกอร์รายงานการละเมิด

โควต้าพื้นที่เก็บข้อมูลที่รายงานแบบคาดการณ์ได้

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

การลดความเสี่ยงนี้จะป้องกันการตรวจหาโหมดการท่องเว็บของผู้ใช้โดยใช้ Storage API ด้วยการรายงานโควต้าเทียม ซึ่งเท่ากับการใช้งาน + ขั้นต่ำ(10 GiB, ปัดเศษดิสก์ขึ้นเป็น 1 GiB ที่ใกล้ที่สุด) ในโหมดการท่องเว็บทั้งหมดสำหรับเว็บไซต์ที่มีสิทธิ์เข้าถึงพื้นที่เก็บข้อมูลแบบจำกัด เว็บไซต์ที่มีสิทธิ์พื้นที่เก็บข้อมูลไม่จำกัดจะไม่ได้รับผลกระทบ โควต้าที่บังคับใช้จะไม่ได้รับผลกระทบเช่นกัน

pushsubscriptionchange เมื่อสมัครใช้บริการอีกครั้ง

เรียกใช้เหตุการณ์ pushsubscriptionchange ใน Service Worker เมื่อต้นทางที่เคยมีการสมัครรับข้อมูลแบบพุชในอดีต แต่ถูกเพิกถอนเนื่องจากการเปลี่ยนแปลงสิทธิ์ (จากอนุญาตเป็นปฏิเสธ/ค่าเริ่มต้น) ได้รับการอนุญาตให้ส่งการแจ้งเตือนอีกครั้ง ระบบจะทริกเกอร์เหตุการณ์โดยมี oldSubscription และ newSubscription ว่างเปล่า

กฎการคาดเดา: เพิ่ม prefetchCache และ prerenderCache ไปยังส่วนหัว Clear-Site-Data

ค่าใหม่ 2 ค่าสำหรับส่วนหัว Clear-Site-Data เพื่อช่วยให้นักพัฒนาซอฟต์แวร์กำหนดเป้าหมาย การล้างแคชการแสดงผลล่วงหน้าและการดึงข้อมูลล่วงหน้าได้ ได้แก่ prefetchCache และ prerenderCache โดยสามารถส่งในคำขอใดก็ได้และไม่จำเป็นต้องส่งในคำขอเอกสาร (เช่น สามารถส่งในการตอบกลับการเรียก API การเพิ่มลงในตะกร้า หรือการเข้าสู่ระบบและออกจากระบบ เพื่อล้างข้อสันนิษฐานเกี่ยวกับการเปลี่ยนแปลงสถานะ)

กฎการคาดเดา: ฟิลด์ target_hint

ซึ่งจะขยายไวยากรณ์กฎการคาดเดาเพื่อให้นักพัฒนาแอประบุฟิลด์ target_hint ได้ ฟิลด์นี้ให้คำแนะนำเพื่อระบุเป้าหมายที่นำทางได้ ซึ่งจะเปิดใช้งานหน้าที่แสดงผลล่วงหน้าในที่สุด เมื่อระบุ _blank เป็นคำแนะนำ ระบบจะเปิดใช้งานหน้าที่แสดงผลล่วงหน้าสำหรับหน้าที่เปิดซึ่งนำทางได้โดย window.open() ระบบไม่รองรับช่องสำหรับการดึงข้อมูลล่วงหน้า

นโยบายต้นทางเดียวกันอย่างเข้มงวดสำหรับ Storage Access API

ปรับความหมายของ Storage Access API ให้เป็นไปตามนโยบายต้นทางเดียวกันอย่างเคร่งครัดในด้านความปลอดภัย กล่าวคือ การใช้ document.requestStorageAccess() ในเฟรมจะแนบคุกกี้กับคำขอ ไปยังต้นทาง (ไม่ใช่เว็บไซต์) ของ iframe โดยค่าเริ่มต้นเท่านั้น

Summarizer API

JavaScript API สำหรับสร้างสรุปของข้อความที่ป้อน โดยมีโมเดลภาษา AI เป็นตัวขับเคลื่อน เบราว์เซอร์และระบบปฏิบัติการต่างๆ คาดว่าจะได้รับสิทธิ์เข้าถึง โมเดลภาษามากขึ้น การเปิดเผยโมเดลในตัวนี้ช่วยให้เราหลีกเลี่ยงการที่ทุกเว็บไซต์ต้องดาวน์โหลดโมเดลภาษาขนาดหลายกิกะไบต์ของตนเอง หรือส่งข้อความอินพุตไปยัง API ของบุคคลที่สาม โดยเฉพาะอย่างยิ่ง Summarizer API จะแสดง API ระดับสูง สำหรับการเชื่อมต่อกับโมเดลภาษาเพื่อสรุปอินพุตสำหรับ Use Case ที่หลากหลาย ในลักษณะที่ไม่ขึ้นอยู่กับโมเดลภาษาที่เฉพาะเจาะจง นโยบายระดับองค์กร (GenAILocalFoundationalModelSettings) พร้อมใช้งานเพื่อปิดใช้การดาวน์โหลดโมเดลพื้นฐาน ซึ่งจะทำให้ API นี้ใช้งานไม่ได้

ดูข้อมูลเพิ่มเติมได้ที่สร้างข้อมูลสรุปที่กระชับด้วย AI ในตัว

Language Detector API

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

นโยบายระดับองค์กร (GenAILocalFoundationalModelSettings) พร้อมให้ใช้งานเพื่อ ปิดใช้การดาวน์โหลดโมเดลพื้นฐาน ซึ่งจะทําให้ API นี้ ไม่พร้อมใช้งาน

ดูข้อมูลเพิ่มเติมได้ที่ตรวจหาภาษาที่ใช้ด้วย AI ในตัว

Translator API

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

ดูข้อมูลเพิ่มเติมได้ในการแปลด้วย AI ในตัว

ส่วนขยายขอบเขตของเว็บแอป

เพิ่มฟิลด์ไฟล์ Manifest ของเว็บแอป "scope_extensions" ซึ่งช่วยให้เว็บแอปขยายขอบเขตไปยังต้นทางอื่นๆ ได้ ซึ่งจะช่วยให้เว็บไซต์ที่ควบคุมโดเมนย่อยและโดเมนระดับบนสุดหลายรายการแสดงเป็นเว็บแอปเดียวได้ ต้องมีต้นทางที่ระบุเพื่อยืนยันการเชื่อมโยงกับเว็บแอปโดยใช้ไฟล์กำหนดค่า .well-known/web-app-origin-association

Web Serial ผ่านบลูทูธใน Android

ฟีเจอร์นี้ช่วยให้หน้าเว็บและเว็บแอปเชื่อมต่อกับพอร์ตอนุกรมผ่านบลูทูธในอุปกรณ์ Android ได้ ตอนนี้ Chrome บน Android รองรับ Web Serial API ผ่าน Bluetooth RFCOMM แล้ว นโยบายขององค์กรที่มีอยู่ (DefaultSerialGuardSetting, SerialAllowAllPortsForUrls, SerialAllowUsbDevicesForUrls, SerialAskForUrls และ SerialBlockedForUrls) ในแพลตฟอร์มอื่นๆ จะเปิดใช้ในสถานะ future_on สำหรับ Android ระบบจะเปิดใช้นโยบายทั้งหมด ยกเว้น SerialAllowUsbDevicesForUrls หลังจากเปิดใช้ฟีเจอร์ แล้ว SerialAllowUsbDevicesForUrls จะเปิดใช้ในการเปิดตัวในอนาคตหลังจากที่ Android รองรับพอร์ตอนุกรมแบบมีสายในระดับระบบ

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

Chrome เวอร์ชันนี้มีการเลิกใช้งานและการนำออกต่อไปนี้ ไปที่ ChromeStatus.com เพื่อดูรายการการเลิกใช้งานที่วางแผนไว้ การเลิกใช้งานในปัจจุบัน และการนำออกก่อนหน้า

Chrome รุ่นนี้จะเลิกใช้งานฟีเจอร์ 2 รายการ

เลิกใช้งานการนำช่วงแบบไม่พร้อมกันออกสำหรับส่วนขยายแหล่งที่มาของสื่อ

มาตรฐาน Media Source เปลี่ยนไปนานแล้วเพื่อไม่อนุญาตให้มีลักษณะการทำงานที่กำหนดอย่างคลุมเครือ ซึ่งเกี่ยวข้องกับการนำช่วงแบบไม่พร้อมกันออก

  • SourceBuffer.abort() จะไม่ยกเลิกการดำเนินการ SourceBuffer.remove() อีกต่อไป
  • การตั้งค่า MediaSource.duration จะตัดสื่อที่บัฟเฟอร์อยู่ในปัจจุบันไม่ได้อีกต่อไป

ตอนนี้ระบบจะแสดงข้อยกเว้นในทั้ง 2 กรณีนี้

นำการสำรองของ SwiftShader ออก

การอนุญาตให้สำรองข้อมูลไปยัง WebGL โดยอัตโนมัติซึ่งได้รับการสนับสนุนจากโปรแกรมแสดงผลซอฟต์แวร์ SwiftShader ถูกเลิกใช้งานแล้ว และการสร้างบริบท WebGL จะล้มเหลวแทนที่จะสำรองข้อมูลไปยัง SwiftShader เราดำเนินการดังกล่าวด้วยเหตุผลหลัก 2 ประการ ดังนี้

  1. SwiftShader มีความเสี่ยงด้านความปลอดภัยสูงเนื่องจากโค้ด JIT ที่ทำงานในกระบวนการ GPU ของ Chromium
  2. ผู้ใช้จะได้รับประสบการณ์การใช้งานที่ไม่ดีเมื่อเปลี่ยนจาก WebGL ที่มีประสิทธิภาพสูงซึ่งทำงานบน GPU ไปเป็นการใช้งานที่ทำงานบน CPU ผู้ใช้ไม่สามารถควบคุมลักษณะการทำงานนี้ได้และอธิบายในรายงานข้อบกพร่องได้ยาก

ในระหว่างระยะเวลาการเลิกใช้งาน คำเตือนจะปรากฏในคอนโซลเครื่องมือสำหรับนักพัฒนาเว็บใน Chrome เมื่อมีการสร้างบริบท WebGL และสำรองข้อมูลด้วย SwiftShader การผ่าน --enable-unsafe-swiftshader จะนำข้อความเตือนนี้ออก