תאריך פרסום: 16 באוקטובר 2024
אלא אם צוין אחרת, השינויים הבאים חלים על הגרסה העדכנית ביותר של ערוץ הבטא של Chrome ל-Android, ל-ChromeOS, ל-Linux, ל-macOS ול-Windows. מידע נוסף על התכונות שמפורטות כאן זמין בקישורים שסופקו או ברשימה באתר ChromeStatus.com. הגרסה 131 של Chrome היא גרסה בטא נכון ל-16 באוקטובר 2024. אפשר להוריד את הגרסה העדכנית ביותר בכתובת Google.com למחשב או מחנות Google Play ל-Android.
CSS
בגרסה הזו נוספו שמונה תכונות CSS חדשות.
מיקום עוגן ב-CSS: anchor-scope
בעזרת המאפיין anchor-scope
אפשר להגביל את החשיפה של שמות עוגנים לתת-עץ נתון.
CSS font-variant-emoji
מאפיין ה-CSS font-variant-emoji
מאפשר לבחור בין גליפים של אמוג'י צבעוניים (בסגנון אמוג'י) לבין גליפים של אמוג'י מונוכרומטיים (בסגנון טקסט). אפשר לעשות זאת גם על ידי הוספת בורר וריאציות של אמוג'י, במיוחד U+FE0E לטקסט ו-U+FE0F לאמוג'י, אחרי כל קוד נקודה של אמוג'י.
תורשה של הדגשה ב-CSS
בירושה של הדגשה ב-CSS, פסאודו-הכיתבים של הדגשה ב-CSS, כמו ::selection
ו-::highlight
, יורשים את המאפיינים שלהם דרך שרשרת הדגשה של הפסאודו, ולא דרך שרשרת הרכיבים. התוצאה היא מודל אינטואיטיבי יותר לירושה של מאפיינים ברגעים מיוחדים.
מידע נוסף זמין בפוסט בבלוג Inheritance changes for CSS selection styling, שנכתב על ידי סטיבן צ'ני (Stephen Chenney) מ-Igalia.
שיפורים במבנה הסגנון של הרכיבים <details>
ו-<summary>
תמיכה בסגנונות CSS נוספים למבנה של הרכיבים <details>
ו-<summary>
, כדי לאפשר שימוש ברכיבים האלה במקרים נוספים שבהם ווידג'טים של גילוי או ווידג'טים של אקורדיון נוצרים באינטרנט. באופן ספציפי, השינוי הזה מסיר הגבלות שמונעות הגדרה של מאפיין התצוגה באובייקטים האלה, ומוסיף פסאודו-אובייקט ::details-content
כדי להגדיר סגנון לקונטיינר של החלק שמתרחב ונסגר.
@page
תיבות שוליים
הוספת תמיכה בתיבות של שולי הדף כשמדפיסים מסמך אינטרנט או מייצאים אותו כקובץ PDF.
תיבות השוליים @page
מאפשרות לכם להגדיר את התוכן באזור השוליים של הדף, למשל כדי לספק כותרות עליונות וכותרות תחתונות בהתאמה אישית, במקום להשתמש בכותרות העליונות ובכותרות התחתונות המובנות שנוצרות על ידי הדפדפן.
תיבת שוליים מוגדרת באמצעות כלל at בתוך כלל @page
ב-CSS. המראה והתוכן של תיבת שוליים מצוינים באמצעות מאפייני CSS בתוך כלל at, כולל הנכס content
. אפשר גם להשתמש בספירה לאחור כדי לספור את הדפים. המפרט מגדיר שני שמות מיוחדים למספרים: page
למספר הדף הנוכחי ו-pages
למספר הכולל של הדפים.
תמיכה בתחביר <string>
של @property
תמיכה בשם רכיב תחביר של <string>
לנכסים מותאמים אישית רשומים.
תמיכה ב-currentcolor בתחביר של צבע יחסי
מתן אפשרות לצבעים יחסיים ב-CSS (באמצעות מילת המפתח from
) להשתמש ב-currentcolor
כבסיס. כך תוכלו להגדיר צבעים משלימים, על סמך צבע הטקסט של רכיב, לגבולות, לצללים או לרקעים של אותו רכיב.
התכונה הזו כוללת גם תרחישים לדוגמה שבהם פונקציות צבע מוכנסות זו בזו עם תלות ב-currentcolor, למשל color-mix(in srgb, rgb(from currentcolor r g b), white))
או rgb(from rgb(from currentcolor 1 g b) b g r)
.
תמיכה במקורות SVG חיצוניים למאפיינים clip-path
, fill
, stroke
ו-marker-*
התכונה הזו מוסיפה תמיכה בהפניות חיצוניות לנתיבי חיתוך, לסימנים ולשרתי צבע (לנכסים fill ו-stroke). לדוגמה, clip-path: url("resources.svg#myPath")
.
ממשקי API של אתרים
Direct Sockets API
מאפשר לאפליקציות אינטרנט מבודדות ליצור תקשורת ישירה באמצעות פרוטוקול בקרת העברה (TCP) ופרוטוקול User Datagram (UDP) עם מכשירים ומערכות ברשת, וגם להאזין לחיבורים נכנסים ולקבל אותם.
החרגת הכותרת Speculation-Rules מההגבלות של CSP
עדכון השילוב בין כללי השערות לבין CSP, כך ש-CSP יחול רק על <script type=speculationrules>
ולא על הכותרת Speculation-Rules
. כללי המדיניות של סקריפטים ב-CSP נועדו להגן מפני הזרקה של סקריפטים ל-HTML, ומודל האיומים של CSP לא קשור לכותרות HTTP. כך אפשר לפרוס בקלות רבה יותר כללי ספקולציות מ-CDN ומשרתים קצה אחרים.
FedCM כאות אמון ל-Storage Access API
התאמה בין FedCM ל-Storage Access API על ידי מתן הרשאה קודמת ב-FedCM כסיבה תקפה לאישור אוטומטי של בקשת גישה לאחסון.
כשמשתמש מעניק הרשאה לשימוש בזהות שלו עם ספק זהויות (IdP) של צד שלישי בצד נסמך (RP), ספקי IdP רבים דורשים קובצי cookie של צד שלישי כדי לפעול בצורה תקינה ומאובטחת. ההצעה הזו נועדה לעמוד בדרישות האלה באופן פרטי ומאובטח, על ידי עדכון בדיקות ההרשאות של Storage Access API (SAA) כך שיקבלו לא רק את הרשאת הגישה שניתנת בהודעת הבקשה לגישה לאחסון, אלא גם את הרשאת הגישה שניתנת בהודעת הבקשה של FedCM.
מאפיין מרכזי של המנגנון הזה הוא הגבלת ההענקה למקרים שמותר להם באופן מפורש על ידי RP באמצעות מדיניות ההרשאות של FedCM, אכיפת בקרה לכל פריים עבור RP ומניעת מעקב פסיבי על ידי ה-IdP מעבר ליכולות שכבר ניתנות על ידי FedCM.
ערך COOP noopener-allow-popups
מקורות מסוימים יכולים להכיל אפליקציות שונות עם רמות שונות של דרישות אבטחה. במקרים כאלה, כדאי למנוע מ-scripts שפועלים באפליקציה אחת לפתוח דפים של אפליקציה אחרת מאותו מקור ולכתוב להם סקריפטים.
במקרים כאלה, כדאי לוודא שהמסמך לא יהיה חשוף לכתיבה של סקריפטים על ידי הגורם שפותח אותו, גם אם המסמך שפותח אותו הוא מאותו מקור. הערך noopener-allow-popups
של Cross-Origin-Opener-Policy מאפשר למסמכים להגדיר את ההתנהגות הזו.
Private Aggregation API: הגדלת מגבלת התרומות ל-100 עבור מבצעי קריאה ל-Protected Audience
מאפשר למפעילי סקריפט של Protected Audience להוסיף עד 100 פריטים לכל דוח Private Aggregation, בהשוואה למגבלה הנוכחית של 20 פריטים.
כשמשתמשים בצבירה פרטית, מספר התרומות לתרשים ההיסטוגרמה שאפשר להטמיע בדוח אחד שניתן לצבור הוא מוגבל, והתרומות הנוספות לא נכללות. גורמים שמפעילים קריאות ל-Shared Storage יכולים לעקוף את המגבלה על ידי הפעלת פעולה אחרת של Shared Storage. עם זאת, למפעילים של קהלים מוגנים אין אחסון מתמיד, ולכן הם מאבדים את התרומות העודפות שלהם בסוף המכרז. חשוב לציין שהשינוי הזה לא משפיע על הפרטיות, כי התרומות של ה-API עדיין מוגבלות על ידי אותו תקציב פרטיות.
בגלל הוספת ה-padding, לכל דוח של קהל מוגן תהיה עומס נתונים גדול יותר, גם אם לא היה צורך במגבלת התרומה הגדולה יותר. אנחנו צופים שהדוחות הגדולים יותר האלה יגדילו את עלות התפעול של שירות הצבירה.
בחירת הרפיה של מנתח
בעקבות השינוי הזה, המערכת לניתוח HTML תאפשר תגים נוספים ב-<select>
מלבד <option>
, <optgroup>
ו-<hr>
.
השינוי הזה נועד לתמוך בתכונה <select>
שניתנת להתאמה אישית, אבל הוא נשלח קודם כי אפשר לבצע אותו בנפרד ויש בו סיכון מסוים לתאימות, וצוות Chrome רוצה לקבל משוב עליו.
WebGPU: מרחק קליפים
הוספנו את תכונת ה-GPU האופציונלית clip-distances
שמאפשרת להגדיר מרחקי חיתוך שהוגדרו על ידי המשתמש בפלט של שגיאות קודקוד. הטכניקה הזו שימושית במיוחד לאפליקציות שצריכות לחתוך את כל הנקודות (vertices) בסצנה שמעבר למישור שהוגדר על ידי המשתמש, כמו הרבה אפליקציות CAD.
WebGPU: GPUCanvasContext getConfiguration()
אחרי שמפעילים את GPUCanvasContext configure()
עם מילון של הגדרות, אפשר להשתמש בשיטה GPUCanvasContext getConfiguration()
כדי לבדוק את הגדרת ההקשר של לוח הציור. הוא כולל את חברי ה-GPU device
, format
, usage
, viewFormats
, colorSpace
, toneMapping
ו-alphaMode
.
כפי שמתואר בבעיה 4828, אפליקציות אינטרנט יכולות להשתמש בו כדי לזהות אם יש תמיכה ב-WebGPU ב-Canvas של HDR.
WebHID ב-workers ייעודיים
הפעלת WebHID בהקשרים של עובדים ייעודיים. כך תוכלו לבצע פעולות קלט/פלט כבדות עיבוד נתונים ממכשיר HID ב-thread נפרד, וכך לצמצם את ההשפעה על הביצועים ב-thread הראשי.
WebRTC RTCRtpEncodingParameters.scaleResolutionDownTo
ממשק API שמגדיר מקודדים של WebRTC להתאמת פריים הקלט אם הם גדולים יותר מ-maxWidth
ו-maxHeight
שצוינו. ממשק ה-API הזה דומה ל-scaleResolutionDownBy
, מלבד העובדה שהגבלות הרזולוציה מנוסחות במונחים מוחלטים (לדוגמה, 640x360) ולא במונחים יחסיים (לדוגמה, שינוי קנה המידה ב-2), כדי למנוע תנאי תחרות שקשורים לשינוי של גודל מסגרת הקלט בזמן אמת.
גרסאות מקור חדשות לניסיון
ב-Chrome 131 אפשר להצטרף לתקופות הניסיון החדשות הבאות למקורות.
נתונים סטטיסטיים של הפעלה של WebAudio
התכונה AudioContext.playoutStats
מאפשרת לאפליקציה למדוד את האיכות ואת זמן האחזור של הפעלת האודיו באמצעות WebAudio.
Summarizer API
ממשק API ל-JavaScript ליצירת סיכומים של טקסט קלט, שמבוסס על מודל שפה מבוסס-AI.
הוצאה משימוש והסרות
בגרסה הזו של Chrome הוספנו את ההוצאות משימוש וההסרות הבאות. באתר ChromeStatus.com אפשר למצוא רשימות של הוצאות משימוש מתוכננות, הוצאות משימוש נוכחיות והוצאות קודמות משימוש.
בגרסה הזו של Chrome הוסרנו שלוש תכונות.
מסירים את מאפיין CSS Anchor Positioning inset-area
בעקבות ההחלטה של קבוצת העבודה בנושא CSS לשנות את השם של המאפיין inset-area
ל-position-area
, ההסרה הזו תנקה את ההטמעה ב-Chromium ותאפשר להשתמש בפיצ'ר שתואם לתקנים.
הסרת היכולת להשבית את BeforeunloadEventCancelByPreventDefault
התכונה BeforeunloadEventCancelByPreventDefault
שוחררה ב-Chrome 117, אבל יש מדיניות ארגונית שמאפשרת להשבית את הדגל הזה בכוח. המדיניות הארגונית תוסר ב-Chrome 131.
הסרת השיטה הלא סטנדרטית requestAdapterInfo()
של GPUAdapter
קבוצת העבודה של WebGPU החליטה שלא מעשי להשתמש ב-requestAdapterInfo()
כדי להפעיל בקשה להרשאה, ולכן הסירה את האפשרות הזו והחליפה אותה במאפיין info
של GPUAdapter כדי שמפתחי האינטרנט יוכלו לקבל את אותו ערך GPUAdapterInfo
באופן סינכרוני.