גרסת בטא של Chrome 119

בגרסת הבטא של Chrome 119 נהנים מתחביר צבעים יחסי של CSS, מחלקות פסאודו חדשות ועוד הרבה יותר.

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

CSS

לגרסה הזו נוספו ארבע תכונות חדשות של CSS.

:משתמש-חוקי וסיווגי פסאודו-פסאוד של CSS-לא חוקיים

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

תחביר צבע יחסי של CSS (RCS)

תחביר הצבעים היחסי מאפשר למפתחים להגדיר צבעים על ידי שינוי הפרמטרים של צבעים אחרים.

לדוגמה: הערך oklab(from magenta calc(l * 0.8) a b); יגרום ל-oklab מג'נטה בהיר יותר ב-80%.

ערכים של תיבת גיאומטריה של קליפ של CSS

מאפיין ה-CSS clip-path תומך עכשיו בערכי <geometry-box> כדי לשלוט בתיבת העזר של הקליפ, וכך קל יותר להשתמש ב-clip-path. אפשר להשתמש בערכים של התיבות האלה לצד צורות בסיסיות (לדוגמה, clip-path: circle(50%) margin-box), או להשתמש בהם בנפרד כדי להצמיד אותם לתיבה שצוינה (לדוגמה, clip-path: content-box).

ערכי xywh() ו-rect() של נתיב CSS

ב-Chrome יש עכשיו תמיכה בערכים xywh() ו-rect() של המאפיין clip-path, כדי שיהיה קל יותר לציין קליפים מלבניים או מלבניים.

ממשקי API לאינטרנט

מכיוון שקובצי Cookie חדשים שנוצרו ב-Chrome 104 או קובצי Cookie שעודכנו עם תאריך תפוגה, התאריך הזה מוגבל ל-400 ימים לכל היותר בעתיד. המגבלה הזו תחול באופן רטרואקטיבי על קובצי cookie שכבר שמורים. תאריכי התפוגה של קובצי ה-cookie האלה יוגבלו לא יותר מ-400 ימים לאחר ההפעלה הראשונה של Chrome 119+ ויבצע העברה חד-פעמית של מסד נתונים. המשתמשים יראו את ההשפעה של השינוי הזה לפחות 400 יום לאחר השקת גרסה 119 של Chrome, ולאחר מכן רק קובצי Cookie קיימים שלא עודכנו באותה תקופה.

DisplayMediaStreamOptions של MonitoringTypeSurfaces

כשמתבצעת קריאה אל getDisplayMedia(), הדפדפן מציע למשתמש לבחור פלטפורמות תצוגה: כרטיסיות, חלונות או מסכים. בעזרת האפשרות monitorTypeSurfaces, אפליקציית האינטרנט יכולה עכשיו לרמוז לדפדפן אם היא מעדיפה לכלול פלטפורמות תצוגה שהסוג שלהן במעקב בין האפשרויות שזמינות למשתמש.

עדכונים לגבי הפונקציונליות של Fenced Frames

גרסה 119 של Chrome כוללת את השיפורים הבאים ב-Fenced Frames.

יש אפשרות פורמט נוספת לפקודות מאקרו של גודל מודעה Protected Audience ב-Protected Audience API בארגז החול לפרטיות. תכונת ההצטרפות מאפשרת לכם להציב בכתובת ה-URL של המודעה את גודל המודעה שזוכה במכרז, לדוגמה:

https://ad.com?width={/%AD_WIDTH%}&height={/%AD_HEIGHT%}

כדי להתאים יותר לסוגים אחרים של פקודות מאקרו ב-Protected Audience API, כמו אלו שמשמשות את deprecatedReplaceInURN ו-registerAdMacro, אנחנו מוסיפים בגרסה 119 של Chrome את היכולת להשתמש ב-${AD_WIDTH} וב-${AD_HEIGHT} כפורמט לפקודות המאקרו, בנוסף לפורמט הנוכחי.

איתותי Bluetooth אוטומטיים יישלחו עכשיו לכל כתובות ה-URL הרשומות. בעבר, רק היעדים שצוינו בקריאה ל-setReportEventDataForAutomaticBeacons() מקבלים איתותי Bluetooth אוטומטיים, גם אם היעד הזה נקרא registerAdBeacon() עבור "reserved.top_navigation" ב-worklet שלהם. עכשיו, כל יעד שנקרא registerAdBeacon() עבור "reserved.top_navigation" יקבל איתות Bluetooth אוטומטי, אבל רק היעדים שצוינו בsetReportEventDataForAutomaticBeacons() יקבלו נתונים של איתות Bluetooth באופן אוטומטי. הפרמטר "once" בsetReportEventDataForAutomaticBeacons() יקבע עכשיו אם הנתונים נשלחים פעם אחת, ולא יקבע אם כל האיתות נשלח פעם אחת.

שוליים גלילה של 'תצפית על צומת'

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

מאגרי גלילה שניתנים למיקוד במקלדת

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

הגבלות גישה לרשת הפרטית לכלי רכב

אכיפה (במקום פשוט להזהיר) הגבלות גישה לרשת הפרטית ב-Chrome ל-Android Automotive (אם BuildInfo::is_automotive). זה כולל בקשות קדם-הפעלה של גישה לרשת הפרטית למשאבי משנה, וגישה לרשת הפרטית ל-Workers.

קריאת מאפיינים של מכשיר Chrome

Device Attributes Web API הוא קבוצת משנה של Managed Device Web API, שמספק לאפליקציות אינטרנט את היכולת לשלוח שאילתות על מידע מהמכשירים. לדוגמה: מזהה המכשיר, המספר הסידורי והמיקום.

החלפת תגי העיצוב שתלויים בשם היעד ל-_blank

השינוי הזה יחליף את שם היעד שניתן לנווט אליו (שמוגדר בדרך כלל על ידי מאפיין היעד) ל-_blank, אם הוא מכיל תגי עיצוב תלויים (לדוגמה: \n ו-<). מה שמתקן מעקף בצמצום של הזרקת תגי עיצוב שתלויה.

הכותרת 'רמזים של לקוחות' (Client Hints) לגבי המדיה של העדפת המשתמש Sec-CH-Prefers-Reduced-Transparency

הכותרת 'רמזי לקוח' של העדפת המשתמש מגדירה קבוצה של כותרות 'רמזים ללקוחות' של HTTP סביב תכונות המדיה של העדפות המשתמש, כפי שהוגדרו על ידי 'שאילתות מדיה' ברמה 5. אם נעשה בהן שימוש כרמזים קריטיים ללקוח, הכותרות האלה מאפשרות לשרתים לקבל החלטות חכמות לגבי, למשל, הטמעה של CSS. Sec-CH-Prefers-Reduced-Transparency משקף את ההעדפה של המשתמש ב-prefers-reduced-transparency, והוא זמין ב-Chrome מגרסה 119.

תווי פיסוק של המארח של כתובת URL שעומדת בדרישות רגילות

צריך לוודא ש-Chrome יטפל בתווי הפיסוק של מארח כתובות ה-URL בהתאם לתקן של כתובות URL. לדוגמה:

לפני:

> const url = new URL("http://exa(mple.com;");
> url.href
'http://exa%28mple.com/&apos;

( הוא תו אסור, אבל Chrome מתיר זאת באופן שגוי.

אחרי:

> const url = new URL("http://exa(mple.com;");
> => throws TypeError: Invalid URL.

קצב העברת נתונים של AudioEncoder WebCodec

חלק מרכיבי הקודק של האודיו תומכים בציון מצבי העברת הנתונים של מקודד האודיו. התכונה הזו מוסיפה דגל "bitrateMode" עם ערך ברירת מחדל של "variable" ל-AudioEncoderConfig של WebCodec, שמשקפת את אפשרות ההגדרה ואת ברירת המחדל שכבר קיימת עבור VideoEncoderConfig.

הסימון הזה יאפשר למפתחים לבחור בין קידוד אודיו עם קצב העברת נתונים משתנה או קצב העברת נתונים קבוע. בהטמעות ספציפיות של מקודדי קודק (codec) עשויים להיות מינוח שונה במקצת (לדוגמה, CBR לעומת VBR עבור Opus), אך כולן צריכות להיות ממופות למושג הכללי 'קבוע' לעומת 'משתנה' קצב העברת נתונים.

לשתי האפשרויות יש את ההשפעות הבאות:

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

החל מגרסה 119 של Chrome, הדגל הזה ישפיע על שני קודקים ב-Chromium: Opus ו-AAC.

כיווץ מפתחות X25519Kyber768 ל-TLS (אבטחת שכבת התעבורה)

להגן על התנועה הנוכחית ב-TLS (אבטחת שכבת התעבורה) ב-Chrome מפני קריפטאנליזה קוונטית עתידית באמצעות פריסת האלגוריתם Kyber768 של פרוטוקול מפתח עם עמידות קוונטית. זהו הסכם מפתחות משולב מסוג X25519 + Kyber768 המבוסס על תקן IETF. המפרט וההשקה האלה לא נכללים במסגרת W3C. ההסכם המרכזי הזה יושק כהצפנה ב-TLS והוא צריך להיות שקוף למשתמשים.

גרסאות מקור לניסיון מתבצעות עכשיו

ב-Chrome 119 אפשר להצטרף לגרסת המקור לניסיון החדשה שבהמשך.

פתיחת חלונות קופצים כחלונות במסך מלא

גרסת המקור החדשה לניסיון הזו מוסיפה פרמטר windowFeatures fullscreen ל-JavaScript API של window.open(). ההרשאה הזו מאפשרת למתקשר לפתוח חלון קופץ ישירות במסך מלא במסך שמכיל את החלון הקופץ (על סמך screenX ו-screenY). באופן הזה, המפתח לא צריך להעביר באופן ידני חלון קופץ למסך מלא, מה שעלול לדרוש אות הפעלה חדש של משתמש.

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

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

בגרסה הזו של Chrome הוסרו ארבע תכונות.

הסרת Web SQL

בעבר הודענו על ההוצאה משימוש של Web SQL והסרה שלו. התכונה הוסרה לחלוטין החל מגרסה 119 של Chrome. גרסת מקור הפוך לניסיון מאפשרת למפתחים להמשיך להשתמש ב-WebSQL עד Chrome 123.

הסרת Sanitizer API

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

כדי למנוע צריבה של ה-API הנוכחי, אנחנו מסירים את ההטמעה הנוכחית. אנחנו מצפים להטמיע מחדש את Sanitizer API כשהמפרט המוצע יתייצב שוב.

הסרת data: URL ב-SVGUseElement

הקצאת data: URL בפונקציה SVGUseElement עלולה לגרום ל-XSS. והפעולה הזאת גרמה גם לעקיפת 'סוגים מהימנים'. לכן, אנחנו מתכננים להוציא משימוש את האפשרות הזו ולהסיר את התמיכה בה.

הסרת המאפיין shadowroot הלא סטנדרטי ל-DOM של צללית הצהרתית

מאפיין המעקב הרגיל shadowrootmode, שמאפשר הפעלה של Shadow DOM, נשלח בגרסה 111 של Chrome. אנחנו מסירים את המאפיין shadowroot שהוא ישן יותר ולא סטנדרטי ב-Chrome 119. יש נתיב העברה פשוט: צריך להחליף את shadowroot ב-shadowrootmode.