גרסת בטא של Chrome 140

תאריך פרסום: 6 באוגוסט 2025

אלא אם צוין אחרת, השינויים הבאים חלים על הגרסה החדשה ביותר של Chrome בטא בערוץ ההפצה ל-Android, ל-ChromeOS, ל-Linux, ל-macOS ול-Windows. מידע נוסף על התכונות שמופיעות כאן זמין בקישורים שבהמשך או ברשימה שבכתובת ChromeStatus.com. גרסה Chrome 140 נמצאת בגרסת בטא החל מ-6 באוגוסט 2025. אפשר להוריד את הגרסה העדכנית ביותר של Chrome למחשב באתר הרשמי של Chrome או מחנות Google Play ב-Android.

CSS וממשק משתמש

חישובים מוקלדים ב-CSS

אפשר להשתמש בביטויים מתמטיים ב-CSS, כמו calc(10em / 1px) או calc(20% / 0.5em * 1px). האפשרות הזו שימושית, למשל, בטיפוגרפיה, כי היא מאפשרת להמיר ערך מוקלד לערך לא מוקלד ולעשות בו שימוש חוזר במאפיינים שמקבלים מספרים. תרחיש שימוש נוסף הוא הכפלת הערך חסר היחידות בסוג אחר. לדוגמה, אפשר להמיר מפיקסלים למעלות.

הנכס scroll-target-group

המאפיין scroll-target-group מציין אם הרכיב הוא קונטיינר של קבוצת סמני גלילה. אפשר להזין בו אחד מהערכים הבאים:

  • ‫'none': האלמנט לא יוצר מאגר של קבוצת סמני גלילה.
  • ‫'auto': הרכיב יוצר קונטיינר של קבוצת סמני גלילה, שמכיל את כל רכיבי סמני הגלילה שהרכיב הזה הוא הקונטיינר הקרוב ביותר של קבוצת סמני הגלילה שלהם.

הגדרת מאגר של קבוצת סמני גלילה מאפשרת לכל רכיבי HTML של עוגן עם מזהה פרגמנט שנמצאים בתוך מאגר כזה להיות שווי ערך ל-HTML של פסאודו-אלמנטים ::scroll-marker. אפשר להגדיר סגנון לאלמנט העוגן שמטרת הגלילה שלו מוצגת כרגע באמצעות פסאודו-המחלקות :target-current.

הפעלת counter() ו-counters() בטקסט החלופי של הנכס content

התכונה הזו מאפשרת להשתמש בcounter() ובcounters() בטקסט החלופי של הנכס content. כך אפשר לקבל מידע משמעותי יותר לשיפור הנגישות.

מעברי תצוגה מקבלים בירושה יותר מאפייני אנימציה

עכשיו העץ הפסאודו של מעבר התצוגה יורש מספר מאפייני אנימציה:

  • animation-delay
  • animation-timing-function
  • animation-iteration-count
  • animation-direction
  • animation-play-state

הפעלת מעברים מוטמעים בין תצוגות

התכונה הזו מאפשרת ליצור עץ של פסאודו-אלמנטים מקוננים במקום עץ שטוח של פסאודו-אלמנטים במעברים בין תצוגות. כך מעבר התצוגה ייראה יותר בהתאם לרכיבים המקוריים ולכוונה החזותית שלו. הוא מאפשר חיתוך, טרנספורמציות תלת-ממדיות מקוננות והחלה נכונה של אפקטים כמו אטימות, מיסוך ופילטרים.

הפצת אזור התצוגה overscroll-behavior מהרכיב הבסיסי

השינוי הזה מעביר את overscroll-behavior מהשורש במקום מהגוף. קבוצת העבודה של CSS החליטה לא להפיץ מאפיינים מ-<body> אל אזור התצוגה. במקום זאת, מאפייני אזור התצוגה מועברים מהרכיב הבסיסי (<html>). לכן, הערך של overscroll-behavior צריך להיות מועבר מהרכיב הבסיסי. עם זאת, יש ב-Chrome בעיה שקיימת כבר זמן רב: הוא מעביר את overscroll-behavior מ-<body> ולא מהשורש. ההתנהגות הזו לא תואמת לדפדפנים אחרים. השינוי הזה מאפשר ל-Chrome לעמוד בדרישות המפרט ולפעול באופן הדדי עם יישומים אחרים.

אפשרות ScrollIntoView מאגר

אפשרות הקונטיינר ScrollIntoViewOptions מאפשרת למפתחים לבצע פעולה scrollIntoView שגורמת לגלול רק את קונטיינר הגלילה הקרוב ביותר ברמת ההיררכיה. לדוגמה, קטע הקוד הבא גורם לגלילה רק במיכל הגלילה של target כדי להציג את target, אבל לא גורם לגלילה בכל מיכלי הגלילה כדי להציג את אזור התצוגה:

target.scrollIntoView({container: 'nearest'});

הוספת מאפיין CSS‏ caret-animation

‫Chromium תומך באנימציה של המאפיין caret-color. עם זאת, כשהסמן מונפש, התנהגות ברירת המחדל של הסמן (מצמוץ) מפריעה לאנימציה.

למאפיין caret-animation של CSS יש שני ערכים אפשריים: auto ו-manual. ‫auto מציין את ברירת המחדל של הדפדפן (הבהוב), ו-manual מציין שהמפתח שולט באנימציה של סימן הקרט. בנוסף, משתמשים שמוטרדים מגירויים חזותיים מהבהבים או שיש להם תגובות שליליות לגירויים כאלה יכולים להשבית את ההבהוב באמצעות גיליון סגנונות של משתמש.

‫highlightsFromPoint API

‫highlightsFromPoint API מאפשר למפתחים ליצור אינטראקציה עם רגעי שיא בהתאמה אישית. הוא מזהה אילו הדגשות קיימות בנקודה ספציפית במסמך. האינטראקטיביות הזו חשובה לתכונות מורכבות באינטרנט שבהן יכול להיות שיש כמה הדגשות שחופפות או קיימות ב-Shadow DOM. ה-API מספק זיהוי מדויק של רגעים חשובים על סמך נקודות, וכך מאפשר למפתחים לנהל אינטראקציות דינמיות עם רגעים חשובים בהתאמה אישית בצורה יעילה יותר. לדוגמה, מפתחים יכולים להגיב ללחיצות של משתמשים או לאירועים של הצבת העכבר מעל אזורים מודגשים כדי להפעיל תיאורי כלים מותאמים אישית, תפריטי הקשר או תכונות אינטראקטיביות אחרות.

שינוי התזמון של הבטחת סיום המעבר בין תצוגות

התזמון הנוכחי של ההבטחה שהושלמה מתרחש בשלבים של מחזור החיים של הרינדור. המשמעות היא שקוד שמופעל כתוצאה מפתרון של הבטחה מופעל אחרי שנוצר הפריימ החזותי שמסיר את מעבר התצוגה. אם הסקריפט מעביר סגנונות כדי לשמור על מצב דומה מבחינה ויזואלית, יכול להיות שיופיע הבהוב בסוף האנימציה. השינוי הזה פותר את הבעיה על ידי העברת שלבי הניקוי של ViewTransition להפעלה אסינכרונית אחרי השלמת מחזור החיים.

הוספת מאפיין המקור ToggleEvent

המאפיין source של ToggleEvent מכיל את האלמנט שהפעיל את ToggleEvent, אם רלוונטי. לדוגמה, אם משתמש לוחץ על רכיב <button> עם המאפיין popovertarget או commandfor שמוגדר לפתיחת חלון קופץ, הטריגר ToggleEvent שמופעל בחלון הקופץ יכלול את מאפיין המקור שמוגדר לרכיב <button> שמפעיל את החלון הקופץ.

איך מונעים מקובץ SVG‏ foreignObject להשפיע על כתובות URL של blob בקנבס

כל הדפדפנים תומכים כבר זמן רב בשימוש ברכיב <img> עם מקור SVG בבד ציור של HTML בפעולה drawImage. עם זאת, ההתנהגות של טשטוש בד יכולה להשתנות בין פלטפורמות שונות. כל הדפדפנים מסמנים את אזור הציור כ'מזוהם' אם מקור ה-SVG כולל תג foreignObject והוא מפנה ל-URI של HTTP. כשמתבצעת הפניה לאותו SVG באמצעות URI של נתונים, כל הדפדפנים לא מסמנים את אזור הציור. עם זאת, כשמשתמשים ב-URI של blob, גם Chromium (לפני השינוי הזה) וגם WebKit מסמנים את ה-canvas, אבל Gecko לא מסמן אותו. כשהתכונה הזו תושק, ההתנהגות של Chromium תהיה זהה לזו של Gecko, ותאפשר שימוש במגוון רחב יותר של תוכן SVG בקריאות canvas drawImage בלי להכתים.

תמיכה בתיאור font-variation-settings ב-@font-face rule

שפת CSS מאפשרת למפתחים לשנות את עובי הגופן, הרוחב, הנטייה וצירים אחרים באמצעות המאפיין font-variation-settings ברכיבים ספציפיים. עם זאת, בדפדפנים שמבוססים על Chromium אין תמיכה במאפיין הזה בהצהרות @font-face. התכונה הזו תומכת בתחביר מבוסס-מחרוזת של font-variation-settings, כפי שמוגדר ב-CSS Fonts Level 4. המערכת מתעלמת מתגי תכונות לא תקינים או לא מזוהים, בהתאם למפרט. אין תמיכה בפורמטים בינאריים או בפורמטים לא סטנדרטיים. השימוש בגופנים משתנים הולך ומתרחב, גם לשיפור הביצועים וגם כדי להגדיל את הגמישות בטיפוגרפיה. הוספת תמיכה בתיאור הזה ב-Chromium משפרת את השליטה, מצמצמת חזרות ותומכת בגישה מודרנית יותר וניתנת להרחבה לטיפוגרפיה באינטרנט.

ממשקי Web API

המרת Uint8Array ל-base64 ומ-base64, וכן ל-hex ומ-hex

‫Base64 היא שיטה נפוצה לייצוג נתונים בינאריים שרירותיים כ-ASCII. ל-JavaScript יש Uint8Arrays לנתונים בינאריים. עם זאת, אין בו מנגנון מובנה לקידוד הנתונים ב-Base64, או לקבלת נתונים ב-Base64 ויצירת Uint8Array תואם. התכונה הזו מוסיפה את האפשרות ואת השיטות להמרה בין מחרוזות הקסדצימליות לבין Uint8Arrays.

שימוש באפשרות ReadableStreamBYOBReader min

התכונה הזו מוסיפה את האפשרות min ל-method הקיים ReadableStreamBYOBReader.read(view). השיטה כבר מקבלת ArrayBufferView שדרכו היא קוראת נתונים, אבל כרגע היא לא מבטיחה כמה רכיבים נכתבים לפני שהקריאה נפתרת. אם מציינים ערך min, הזרם ימתין עד שיהיו זמינים לפחות מספר האלמנטים הזה לפני שהקריאה תיפתר. השינוי הזה משפר את ההתנהגות הנוכחית, שבה יכול להיות שפעולות קריאה יסתיימו עם פחות רכיבים ממה שאפשר להציג בתצוגה.

במקרים מסוימים, חשוב להבחין בצד השרת בין קובצי Cookie שהוגדרו על ידי השרת לבין קובצי Cookie שהוגדרו על ידי הלקוח. מקרה כזה הוא קובצי Cookie שהשרת בדרך כלל תמיד מגדיר. עם זאת, קוד לא צפוי (כמו ניצול לרעה של XSS, תוסף זדוני או קומיט ממפתח מבולבל) עשוי להגדיר אותם בצד הלקוח. ההצעה הזו מוסיפה אות שמאפשר לשרתים להבחין בין שני המקרים. באופן ספציפי, הוא מגדיר את הקידומות __Http ו-__HostHttp, שמוודאות שקובץ Cookie לא מוגדר בצד הלקוח באמצעות סקריפט.

הגבלות גישה לרשת המקומית

ב-Chrome 140, היכולת לשלוח בקשות לרשת המקומית של המשתמש מוגבלת, ולכן מוצגת בקשה למתן הרשאה. בקשה לאחזור מהרשת מקומית היא כל בקשה מאתר ציבורי לכתובת IP מקומית או ללולאה חוזרת (loopback), או מאתר מקומי (כמו אינטראנט) ללולאה חוזרת. הצגת בקשת הרשאה לפני שאפשר לשלוח בקשות כאלה מאתרים מצמצמת את הסיכון למתקפות של זיוף בקשות בין אתרים נגד מכשירים ברשת המקומית, כמו נתבים. בנוסף, היא מצמצמת את היכולת של אתרים להשתמש בבקשות האלה כדי ליצור טביעת אצבע של הרשת המקומית של המשתמש. ההרשאה הזו מוגבלת להקשרים מאובטחים. אם הגישה ניתנת, ההרשאה גם מבטלת את החסימה של תוכן מעורב לבקשות ברשת המקומית, כי למכשירים מקומיים רבים אין אפשרות לקבל אישורי TLS מהימנים מסיבות שונות.

מידע נוסף על הנחיה חדשה למתן הרשאת גישה לרשת המקומית

הפעלת האפשרות שסקריפטים של SharedWorker יירשו בקר לכתובות URL של סקריפטים מסוג blob

במפרט מצוין שה-workers צריכים לרשת בקרים בכתובת ה-URL מסוג blob. עם זאת, הקוד הקיים מאפשר רק ל-dedicated workers לרשת את הבקר, ו-shared workers לא מורשים לרשת את הבקר. השינוי הזה מתקן את הפונקציונליות של Chrome כך שתתאים למפרט. המדיניות הארגונית של SharedWorkerBlobURLFixEnabled קובעת את התכונה הזו.

הוספה של ServiceWorkerStaticRouterTimingInfo

התכונה הזו מוסיפה מידע על תזמון ל-ServiceWorker Static routing API, שמוצג ב-navigation timing API וב-resource timing API לשימוש המפתחים. ‫ServiceWorker מספק מידע על תזמון כדי לסמן נקודות זמן מסוימות.

התכונה הזו מוסיפה שני קטעי מידע על תזמון שרלוונטיים ל-API של ניתוב סטטי:

  • ‫RouterEvaluationStart: הזמן שחלף עד שהתחילה ההתאמה של בקשה לכללי נתב רשומים.
  • ‫CacheLookupStart: השעה שבה מתחילים לחפש באחסון המטמון אם המקור הוא "cache".

בנוסף, התכונה הזו מוסיפה שני סוגי מידע על מקור הנתונים של הנתב: מקור הנתונים של הנתב שתאם ומקור הנתונים הסופי של הנתב.

הפעלת יצירה מותנית של אימות אינטרנט ב-Android (לא נשלח)

אפליקציות אינטרנט מבודדות (IWA)

הצגת Controlled Frame API

התכונה הזו מוסיפה Controlled Frame API שזמין רק לאפליקציות אינטרנט מבודדות (IWA). בדומה לממשקי API עם שמות דומים בפלטפורמות אחרות, Controlled Frame מאפשר להטמיע את כל התוכן, כולל תוכן של צד שלישי שלא ניתן להטמיע ב-<iframe>. בנוסף, Controlled Frame מאפשר לשלוט בתוכן מוטמע באמצעות אוסף של שיטות ואירועים של API. מידע נוסף על אפליקציות אינטרנט מבודדות זמין בהסבר על אפליקציות אינטרנט מבודדות.

גרסאות מקור חדשות לניסיון

ב-Chrome 140 אפשר להצטרף לניסויים חדשים של מקורות.

הוספת האירוע clipboardchange

האירוע clipboardchange מופעל בכל פעם שאפליקציית אינטרנט או כל אפליקציית מערכת אחרת משנה את התוכן של הלוח של המערכת. כך אפליקציות אינטרנט כמו לקוחות של שולחן עבודה מרוחק יכולות לשמור על סנכרון של לוחות ההעתקה שלהן עם לוח ההעתקה של המערכת. היא מספקת חלופה יעילה לסקר של הלוח באמצעות JavaScript כדי לזהות שינויים.

הפעלת התראות על שיחות נכנסות

התכונה הזו מרחיבה את Notifications API ומאפשרת לאפליקציות PWA מותקנות לשלוח התראות על שיחות נכנסות – התראות עם לחצנים בסגנון שיחה וצלצול. התוסף הזה עוזר לאפליקציות אינטרנט של VoIP ליצור חוויות מעניינות יותר, כי הוא מאפשר למשתמשים לזהות בקלות התראות על שיחות ולענות להן. בנוסף, התכונה הזו עוזרת לגשר על הפער בין הטמעות של אפליקציות שכוללות גם הטמעות מותאמות וגם הטמעות באינטרנט.

הצגת Crash Reporting API עם מפתח/ערך

התכונה הזו מטמיעה API חדש של מפתח/ערך, שנקרא באופן זמני window.crashReport, שמגובה במפה לכל מסמך שמכילה נתונים שמצורפים לדוחות קריסה.

הנתונים שמוצבים במפת הגיבוי של ה-API הזה נשלחים ב-CrashReportBody אם מתרחשות קריסות בתהליך העיבוד באתר. כך מפתחים יכולים לנפות באגים במצב ספציפי באפליקציה שלהם שעלול לגרום לקריסה מסוימת.

הוצאה משימוש והסרות

בגרסה הזו של Chrome הוצאו משימוש והוסרו התכונות שמפורטות בהמשך. באתר ChromeStatus.com אפשר למצוא רשימות של הוצאות משימוש מתוכננות, הוצאות משימוש נוכחיות והסרות קודמות.

בגרסה הזו של Chrome הוצאה משימוש תכונה אחת.

הוצאה משימוש של כללים מיוחדים לגבי גודל הגופן של <h1> בתוך רכיבים מסוימים

במפרט HTML יש רשימה של כללים מיוחדים לתגי <h1> שמוטמעים בתוך רכיבי <article>, <aside>, <nav> או <section>.

הכללים המיוחדים האלה יצאו משימוש כי הם גורמים לבעיות נגישות. כלומר, הם מקטינים את הגודל של הגופן של תגי <h1> מוטמעים כדי שהם ייראו כמו תגי <h2>, אבל שום דבר בעץ הנגישות לא משקף את השינוי החזותי הזה.