Chrome 149 beta

תאריך פרסום: 6 במאי 2026

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

CSS וממשק משתמש

הסרה של כלל גיליון סגנונות (stylesheet) מפורש של צבע גבול ב-UA לטבלאות

השינוי הזה מסיר את כלל ה-CSS השגוי border-color: gray מגיליון הסגנונות של UA עבור הרכיב <table>.

במפרט ה-HTML לא מופיע הכלל הזה, והוא גורם לכך שברירת המחדל של הגבולות לא מוגדרת כ-currentColor. לא ב-Firefox ולא ב-Webkit יש את כלל צבע הגבול gray בגיליון הסגנונות של UA, ולכן יש בעיות תאימות.

תמיכה ב-path() וב-shape() ב-shape-outside

נוספת תמיכה בפונקציות הצורה path() ו-shape() במאפיין CSS shape-outside. הפונקציות האלה מאפשרות למפתחים להגדיר צורות החרגה של רכיבים צפים באמצעות קואורדינטות של מלבנים.

תמיכה ב-rect() וב-xywh() ב-shape-outside

נוספה תמיכה בפונקציות של צורות בסיסיות rect() ו-xywh() במאפיין CSS shape-outside. הפונקציות האלה מאפשרות למפתחים להגדיר צורות של החרגת float באמצעות קואורדינטות של מלבן, וכך להתאים את Chrome ל-Firefox ול-Safari, שכבר תומכים בתכונה הזו.

צבע משני של מערכת בהיקף של אפליקציית אינטרנט

מגביל את הגישה לצבע משני של המערכת למילות מפתח ב-CSS ול-accent-color: auto רק בהקשר של אפליקציית אינטרנט ופרופיל ראשוני.

מילות המפתח AccentColor ו-AccentColorText ב-CSS מהוות וקטור משמעותי לזיהוי טביעת אצבע דיגיטלית, כשהן חושפות את צבעי המערכת של המשתמש באופן נרחב באינטרנט. לכן, הן זמינות רק בהקשרים של אפליקציות אינטרנט מותקנות. אמצעי הבקרה של הטופס עם accent-color: auto תואמים גם להיקף הזה עם השקת התכונה הזו. השינוי הזה יוצר ציפיות עקביות יותר אצל המפתחים והמשתמשים לגבי צבעי המערכת, והוא תואם להגבלות על טכניקות לזיהוי ייחודי של מכשירים ב-AccentColor[Text].

חיתוך של טקסט שגולש באינטראקציה של המשתמש

כשמשתמש מקיים אינטראקציה (עריכה או ניווט באמצעות סמן טקסט) עם טקסט שהוגדר לו text-overflow: ellipsis, הטקסט עובר באופן זמני מסימן שלוש הנקודות לחיתוך, כדי שהמשתמש יוכל לראות את התוכן המוסתר שגולש מעבר לגבולות ולקיים איתו אינטראקציה. התכונה הזו רלוונטית לכל הרכיבים שאפשר לערוך ושאי אפשר לערוך. ההתנהגות הזו כבר נתמכת בפקדי טופס (textarea,‏ input).

קישוטים של רווחים ב-CSS

קישוטי רווחים ב-CSS מאפשרים לעצב רווחים בפריסות של רכיבי container כמו grid ו-flexbox, בדומה ל-column-rule בפריסה של כמה עמודות. מפתחי אתרים ביקשו את התכונה הזו פעמים רבות, כי כיום הם נאלצים להשתמש בפתרונות עקיפים כדי לעצב את הרווחים בפריסות של רשתות ו-Flexbox.

image-rendering: crisp-edges

image-rendering: crisp-edges מציין שיש לשנות את קנה המידה של התמונה באופן ששומר על הניגודיות והקצוות, ושלא יגרום להחלקת הצבעים או לטשטוש התמונה בתהליך.

שכבת גבול עליונה של פסאודו-סיווג של פעולת משתמש

התכונה הזו מייצגת את ההתנהגות שמתוארת במפרט של סלקטורים ב-CSS ברמה 4, שבו מצוין שהסלקטורים :hover, :active ו-:focus-within תואמים לרכיבי האב, אבל רק עד לרכיב הראשון בשכבה העליונה בשרשרת האב. השינוי ב-Chromium מטמיע את ההגבלה הזו ברכיבים בשכבה העליונה.

במילים אחרות, במבנה הבא, אם המשתמש מעביר את העכבר מעל <button>, המחלקה המדומה :hover תתאים ל-<button> ולחלון הקופץ, אבל לא תתאים לרכיב <main>.

<main>
  <div popover>
    <button></button>
  </div>
</main>
<script>document.querySelector('[popover]').showPopover();</script>

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

ההטמעה של רכיב ה-select שניתן להתאמה אישית ונשלחה ב-Chromium כוללת את הלוגיקה הזו, שמוגדרת כקוד קשיח למקרה הספציפי של חלון קופץ של רכיב ה-select ::picker(). הלוגיקה של המקרה המיוחד הזה מוסרת לטובת ההתנהגות הכללית יותר של התכונה הזו.

תמיכה ב-path-length כמאפיין CSS

השינוי הזה מוסיף מאפיין CSS חדש, path-length, שממופה למאפיין ההצגה pathLength הקיים ב-SVG. הוא חל על רכיבי גיאומטריה של SVG שתומכים ב-pathLength (כולל <path>,‏ <circle>,‏ <rect>,‏ <line>,‏ <polyline>,‏ <polygon> ו-<ellipse>).

חשיפת pathLength כמאפיין CSS מאפשרת למחברים לציין אותו בגיליונות סגנונות, בסגנונות מוטבעים ובאנימציות, וכך הוא יכול להשתתף בנפילה הרגילה של CSS, בספציפיות, במעברים ובאנימציות. המאפיין משפיע על כל החישובים שתלויים באורך הנתיב הכולל, כולל עיבוד של קו מקווקו של צורה ומיקום של טקסט לאורך <textPath>.

הצהרות CSS מבטלות את מאפיין ההצגה בהתאם לכללי הקדימות הרגילים של CSS. הערך הראשוני של path-length הוא none, שמייצג היעדר של אורך נתיב שסופק על ידי המחבר, והוא שונה מערך מספרי מפורש כמו 0.

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

Web APIs

Intl.Locale.prototype.variants

מוסיפים Intl.Locale.prototype.variants כמו שמוסבר בהצעה של TC39, ומקבלים גם 'וריאציות' בחבילת האפשרויות בבונה Intl.Locale כמו שמוסבר בעדכון של מזהה השפה של TC39. השינויים ב-ECMA402 מוזגו בבקשת המשיכה 960, וקוד הבדיקה ב-test262 מוזג בבקשת המשיכה 4474

הבטחות לגלילה פרוגרמטית

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

בקשת תשלום: לאפשר למעבדי handler של תשלומים לדווח על שגיאות פנימיות

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

ממשק ה-API של Web-based Payment Handler יכול לציין את ההבדל הזה על סמך השגיאה שבה הוא משתמש כדי לדחות את ההבטחה שהועברה אל PaymentRequestEvent.respondWith. אם ההבטחה נדחית עם OperationError, מוחזר למוֹכר הערך 'שגיאה פנימית באפליקציה' (OperationError) באמצעות השיטה PaymentRequest.show(). אחרת, מוחזר הערך 'המשתמש ביטל' (AbortError).

התשתית של אמצעי התשלום באפליקציות נייטיב מותאמת באופן דומה, אבל היא לא רלוונטית לממשקי API לאינטרנט.

התייחסות ל-autocorrect="off" עבור מקלדת מגע של Windows ב-TSF

מאפיין ה-HTML‏ autocorrect מאפשר לכותבי אתרים לקבוע אם תיקון שגיאות אוטומטי יחול על קלט של משתמשים ברכיבים שניתנים לעריכה, כולל <input>, ‏ <textarea> ומארחים עם מאפיין contenteditable. ב-Windows, המקלדת למסך המגע מתעלמת מהמאפיין הזה ותמיד מבצעת תיקון אוטומטי של מילים. לדוגמה, אם מקלידים "truf" ואז רווח ברכיב עם autocorrect="off", התוצאה היא "true " במקום "truf ". התכונה הזו מאפשרת לשילוב TSF של Chrome לזהות ולבטל תיקונים אוטומטיים של המקלדת הווירטואלית כשאלמנט ניתן לעריכה ממוקד מוגדר עם autocorrect="off".

ניתוק של WebSockets בכניסה ל-bfcache

חיבורי WebSocket פעילים כבר לא מונעים מדף להיכנס למטמון לדף הקודם/הבא (bfcache). אם הדפדפן סוגר את החיבורים בכניסה ל-bfcache במקום לסמן את המסמך כלא כשיר, הוא מאפשר לשמור ולשחזר דפים עם websockets פעילים.

מאפיין Request.isReloadNavigation

המאפיין הבוליאני isReloadNavigation לקריאה בלבד נוסף לממשק Request של Fetch API. המאפיין הזה מציין אם בקשת הניווט הנוכחית הופעלה כטעינה מחדש שהמשתמש יזם (לדוגמה, באמצעות לחצן הרענון, location.reload() או history.go(0)). האות הזה נחשף בעיקר באובייקט Request בתוך FetchEvent של Service Worker.

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

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

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

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

מדיניות ההרשאות: focus-without-user-activation

מאפשר למטמיעים לשלוט במיקוד פרוגרמטי מתוכן מוטמע באמצעות focus-without-user-activation מדיניות ההרשאות. כשהמדיניות נדחית עבור מסגרת, קריאות פוקוס פרוגרמטיות (element.focus(), ‏autofocus, ‏window.focus(), ‏dialog.showModal() ופוקוס בחלון קופץ) נחסמות אלא אם הן מופעלות על ידי הפעלת משתמש. הבעיה אף פעם לא משפיעה על מיקוד ביוזמת המשתמש, כמו לחיצה או שימוש במקש Tab.

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

Gamepads event-driven input API

ההצעה הזו מרחיבה את Gamepad API עם מודל חדש מבוסס-אירועים שמאפשר לאפליקציות לקבל קלט של שלט משחק עם זמן אחזור נמוך יותר. במקום להסתמך על סקרים תכופים באמצעות navigator.getGamepads(), מפתחים יכולים עכשיו להאזין לאירוע rawgamepadinputchange, שמופעל בכל פעם שנתוני קלט חדשים זמינים מהמכשיר. כך אפשר לטפל בקלט בצורה מהירה יותר, במיוחד באפליקציות שרגישות לזמן האחזור.

מתארים מותאמים אישית של WebAssembly

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