کروم 118 بتا

سبک‌های محدوده‌ای برای CSS، ویژگی‌های رسانه اضافی، محفظه‌های اسکرول قابل تمرکز روی صفحه‌کلید و موارد دیگر.

تغییرات توضیح داده شده در جدیدترین کانال بتا Chrome برای Android، ChromeOS، Linux، macOS و Windows اعمال می‌شود، مگر اینکه خلاف آن ذکر شده باشد. از طریق پیوندهای ارائه شده یا از فهرست موجود در ChromeStatus.com درباره ویژگی های فهرست شده در اینجا بیشتر بیاموزید. Chrome 118 در تاریخ 13 سپتامبر 2023 نسخه بتا است. می‌توانید آخرین نسخه را در Google.com برای دسک‌تاپ یا در فروشگاه Google Play در Android بارگیری کنید.

CSS

این نسخه چهار ویژگی جدید CSS را اضافه می کند.

سبک های محدوده

قاعده @scope به توسعه دهندگان اجازه می دهد تا قوانین سبک را به یک ریشه محدوده معین، و عناصر را با توجه به مجاورت آن ریشه محدوده، سبک کنند.

مقادیر نسبی جریان منطقی CSS

مقادیر جدید زیر را به ویژگی های CSS موجود اضافه می کند:

  • float: inline-start
  • float: inline-end
  • clear: inline-start
  • clear: inline-end
  • resize: block
  • resize: inline

این کلمات کلیدی جهت دار مربوط به جریان، بسته به حالت نوشتن یا جهت عنصر یا بلوک حاوی آن، به یک مقدار فیزیکی تبدیل می شوند.

پرسش‌های رسانه‌ای: ویژگی ترجیحی-کاهش-شفافیت

ویژگی رسانه prefers-reduced-transparency را اضافه می‌کند، که به توسعه‌دهندگان اجازه می‌دهد محتوای وب را با اولویت‌های انتخابی کاربر برای کاهش شفافیت در سیستم‌عامل، مانند تنظیم کاهش شفافیت در macOS، تطبیق دهند. گزینه های معتبر reduce یا no-preference هستند.

از stroke-box، content-box و border-box در ویژگی transform-box CSS پشتیبانی کنید

افزودن این پشتیبانی، تغییر نحوه محاسبه کادر مرجع برای ویژگی transform را امکان پذیر می کند. این تبدیل ها یا جلوه های گرافیکی اضافی را امکان پذیر می کند. به عنوان مثال، چرخش حول یک نقطه در کادر محتوا، جایی که عرض مرز یک عنصر بر نتیجه تأثیر نمی گذارد. یا، جایی که ضربه یک عنصر (SVG) باید بر روی نتیجه تأثیر بگذارد، برای مثال، هنگام چرخش یک شکل نوک‌دار در اطراف مرکز آن - از جمله ضربه.

HTML

محفظه های اسکرول قابل فوکوس روی صفحه کلید

با فوکوس کردن محفظه‌های اسکرول با استفاده از ناوبری فوکوس متوالی، دسترسی را بهبود می‌بخشد. قبل از این تغییر، کلید tab روی پیمایش‌ها متمرکز نمی‌شود مگر اینکه tabIndex به صراحت روی 0 یا بیشتر تنظیم شده باشد. با فوکوس‌پذیر کردن اسکرول‌ها به‌طور پیش‌فرض، کاربرانی که نمی‌توانند (یا نمی‌خواهند) از ماوس استفاده کنند، می‌توانند با استفاده از زبانه و کلیدهای پیکان صفحه‌کلید به محتوای بریده‌شده دسترسی پیدا کنند. این رفتار برای اسکرول‌هایی که حاوی عناصر قابل فوکوس صفحه‌کلید هستند صدق نمی‌کند، زیرا از قبل از طریق صفحه‌کلید قابل دسترسی هستند.

رفتار حالت quirks را برای ویژگی برچسب گزینه حذف کنید

عناصر گزینه از یک ویژگی label پشتیبانی می کنند که باعث می شود این گزینه با متن داخل ویژگی به جای متن فرزند خود عنصر گزینه ارائه شود. این عملکرد در حالت quirks غیرفعال است، جایی که ویژگی label نادیده گرفته می شود و متن فرزند همیشه ارائه می شود. این تغییر همیشه از ویژگی label هم در حالت استاندارد و هم در حالت quirks استفاده می کند.

API های وب

ثبت نام برای جعبه ایمنی حریم خصوصی (PSB)

از آنجایی که APIهای مرتبط و اندازه‌گیری Privacy Sandbox شروع به افزایش برای دسترسی عمومی می‌کنند، می‌خواهیم مطمئن شویم که این فناوری‌ها همانطور که در نظر گرفته شده و با شفافیت استفاده می‌شوند. APIها عبارتند از Attribution Reporting , Protected Audience API , Topics API , Private Aggregation API and Shared Storage API . PSB در حال معرفی فرآیند ثبت نام توسعه‌دهنده جدید برای APIهای مربوط به Sandbox حریم خصوصی و اندازه‌گیری است. Chrome فهرست سایت‌های ثبت‌شده را از سرور ثبت‌نام (از طریق به‌روزرسانی مؤلفه) واکشی می‌کند و از آن برای دسترسی به APIهای Privacy Sandbox استفاده می‌کند.

تمام کوکی‌های تنظیم شده از طریق جاوا اسکریپت که حاوی نویسه‌های کنترلی هستند را مسدود کنید

نحوه مدیریت کاراکترهای کنترلی در کوکی های تنظیم شده از طریق جاوا اسکریپت را به روز می کند. به طور خاص، همه کاراکترهای کنترل باعث می شوند که کل کوکی رد شود. پیش از این، یک نویسه NULL، یک نویسه بازگشتی حامل، یا یک نویسه تغذیه خط در یک خط کوکی باعث می شد که به جای رد شدن کامل، کوتاه شود، که می توانست در شرایط خاص رفتار مخرب را فعال کند. این رفتار Chrome را با رفتاری که در آخرین پیش‌نویس‌های RFC6265bis نشان داده شده است، همسو می‌کند. این تغییر را می توان با استفاده از --disable-features=BlockTruncatedCookies یا خط مشی سازمانی BlockTruncatedCookies غیرفعال کرد، که برای چندین نقطه عطف وجود خواهد داشت در صورتی که این تغییر باعث شکستگی شود.

حداقل اندازه فونت ثابت در بین زبان ها

تنظیم پیش‌فرض حداقل اندازه قلم را به‌طور پیش‌فرض برای هفت زبان (عربی، فارسی، ژاپنی، کره‌ای، تایلندی، ساده‌شده و چینی سنتی) برای بهبود قابلیت همکاری و دسترسی تغییر می‌دهد. قبل از این تغییر، این تنظیم به‌طور پیش‌فرض برای همه زبان‌ها غیر از هفت زبان فهرست شده خاموش بود. این تغییر باعث می شود این زبان ها با زبان های دیگر سازگار باشند. توجه داشته باشید، این در مورد تغییر ویژگی حداقل اندازه فونت نیست. بدون هیچ تغییری برای دسترسی و خوانایی در دسترس خواهد بود.

تشخیص انتقال UA در ناوبری با همان سند

انتقال‌های بصری هموار هنگام حرکت کاربران در وب می‌تواند بار شناختی را با کمک به کاربران در ماندن در متن کاهش دهد. با این حال، اگر هم نویسنده سایت و هم UA این انتقال ها را اضافه کنند، تجربه کاربر بد است: این انتقال ها ممکن است با هم تداخل داشته باشند و باعث سردرگمی کاربر شوند. این API از چنین مواردی اجتناب می کند تا اطمینان حاصل شود که تنها یک انتقال بصری در یک زمان اجرا می شود. API یک Boolean در PopStateEvent و NavigateEvent اضافه می کند تا نشان دهد آیا UA یک انتقال بصری برای این پیمایش اجرا کرده است یا خیر. توسعه دهندگان می توانند از این برای رد شدن از انتقال سفارشی خود استفاده کنند.

تجزیه کننده URL نویسه های ASCII با درصد رمزگذاری شده را در مسیر URL رمزگشایی نمی کند

این تغییرات باعث می‌شود تجزیه‌کننده URL نویسه‌های ASCII با درصد رمزگذاری شده را در مسیر URL رمزگشایی نکند، مانند "%41" ("A"). قبل از این تغییر:

const url = new URL("http://example.com/%41");
url.href "http://example.com/A" 

بعد از این تغییر:

const url = new URL("http://example.com/%41"); 
url.href "http://example.com/%41"

هدف گذاری منفی مخاطبین محافظت شده

در حراج‌های تبلیغات آنلاین برای فضای تبلیغاتی، گاهی اوقات جلوگیری از نمایش یک آگهی به مخاطبان خاص مفید است، مفهومی که به عنوان هدف‌گذاری منفی شناخته می‌شود. برای مثال، ممکن است نخواهید یک تبلیغ مشتری جدید را به مشتریان فعلی نشان دهید. کمپین های جذب مشتری جدید اغلب این را به عنوان یک نیاز حیاتی دارند. مخاطب محافظت شده در حال حاضر تبلیغات را قادر می‌سازد تا کاربرانی را که از طریق فعالیت‌های گذشته در وب به یک گروه مورد علاقه ملحق شده‌اند، هدف قرار دهند. این ویژگی مخاطبین محافظت شده را گسترش می‌دهد تا با اجازه دادن به تبلیغات جدید فقط کاربرانی را هدف قرار دهند که به یک گروه مورد علاقه ملحق نشده‌اند. به این ترتیب، ما به تبلیغ‌کنندگان این امکان را می‌دهیم تا با استفاده از مفاهیم حفظ حریم خصوصی موجود در Protected Audience API، گروه‌های جدیدی از کاربران را هدف قرار دهند.

نیاز به فعال سازی کاربر پرداخت را حذف کنید

برای کمک به توسعه‌دهندگان برای کاهش اصطکاک در جریان درخواست پرداخت، ما در حال حذف الزام فعال‌سازی کاربر در درخواست پرداخت و تأیید پرداخت امن هستیم. برای کاهش خطرات امنیتی و حریم خصوصی با این تغییر، راهکارهای کاهش هرزنامه و جک کلیک در نظر گرفته شده است.

WebUSB در Extension Service Workers

به توسعه دهندگان وب اجازه می دهد تا از WebUSB API هنگام پاسخ دادن به رویدادهای برنامه افزودنی با افشای WebUSB API در اختیار Service Workers ثبت شده توسط برنامه های افزودنی مرورگر استفاده کنند. این API در حال حاضر در معرض Service Workers ثبت‌شده توسط سایت‌ها قرار نمی‌گیرد.

اسناد XML بخش های متوالی CDATA را در یک گره ادغام می کنند

به دلیل وجود اشکال در libxml، بخش‌های CDATA در یک سند XHTML، بسته به اندازه سند و موقعیت بخش CDATA در سند، گاهی اوقات می‌توانند به اشتباه چندین گره تولید کنند. هنگامی که یک بخش CDATA از چندین قطعه تجزیه کننده ورودی استفاده می کند، libxml بافر می کند و ورودی CDATA را در 300 بایت اجرا می کند. این به طور غیرمنتظره ای یک بخش CDATA را به چندین گره تبدیل می کند (اگر طول قطعه ورودی بیشتر از 300 بایت باشد). این تغییر باعث می شود که گره های بخش CDATA خواهر و برادر در طول تجزیه در یک بخش CDATA ادغام شوند. این باگ libxml را در حین تجزیه برطرف می‌کند، اما گره‌های جداگانه تالیف شده را نیز ادغام می‌کند، برای مثال: <![CDATA[foo]]><!CDATA[bar]]> یک گره CDATA DOM با محتوای "foobar": CDATA "foobar" .

شرایط گفتگوی پیش از بارگیری کنترل کننده را تغییر دهید

دو تغییر جدید در نحوه درخواست گفتگوی لغو برای رویداد beforeunload وجود دارد.

اگر event.preventDefault() فراخوانی شد، گفتگوی لغو را اعلان کنید. اگر event.returnValue رشته خالی است، گفتگوی لغو را درخواست نکنید.

آزمایش های مبدا در حال انجام است

در Chrome 118 می‌توانید نسخه آزمایشی مبدا جدید زیر را انتخاب کنید.

تبدیل کدگذاری شده WebRTC: تغییر توابع ابرداده

ویژگی هایی را به WebRTC Encoded Transform API اضافه می کند که امکان دستکاری فراداده فریم های صوتی و تصویری را فراهم می کند. تعدادی از موارد استفاده شناسایی شده است که نیاز به دستکاری رسانه های رمزگذاری شده WebRTC بدون رمزگشایی اولیه دارند. این موارد عبارتند از:

  • ارسال داده‌هایی که قبلاً کدگذاری شده‌اند.
  • ارسال داده هایی که به صورت کدگذاری شده دریافت شده اند.
  • دریافت اطلاعات به صورت کدگذاری شده و ارسال آن.

به طور خاص، ما می‌خواهیم از حالت استفاده از ارسال بدون اشکال رسانه‌ای که از چندین اتصال همتای اضافی که بارهای رسانه‌ای یکسان اما با ابرداده‌های متفاوت را ارائه می‌کنند، پشتیبانی کنیم.

برای آزمایش اولیه RTCEncodedFrameSetMetadata ثبت نام کنید.

محرومیت ها و حذف ها

این نسخه از Chrome موارد منسوخ و حذف فهرست شده در زیر را معرفی می کند. برای مشاهده لیستی از لغو برنامه ریزی شده، منسوخ شدن فعلی و حذف قبلی، از ChromeStatus.com دیدن کنید.

این نسخه کروم ویژگی زیر را حذف می کند.

حذف برخی از کلمات کلیدی ظاهری غیر استاندارد

در کروم 118، کلمات کلیدی appearance غیر استاندارد با کمترین میزان استفاده غیرفعال خواهند شد. هنگامی که ویژگی غیرفعال شود، اگر از آن کلمه کلیدی به عنوان مقدار استفاده کند، ویژگی ظاهر نادیده گرفته می شود. کلیدواژه هایی که در Chrome 118 غیرفعال می شوند، آنهایی هستند که کمتر از 0.001٪ استفاده دارند:

  • media-slider
  • media-sliderthumb
  • media-volume-slider
  • media-volume-sliderthumb
  • sliderthumb-horizontal
  • sliderthumb-vertical

پس زمینه

از آنجایی که فقط کلمات کلیدی appearance استاندارد باید پشتیبانی شوند، ما در حال حذف کلمات کلیدی appearance-webkit-appearance ) غیر استاندارد هستیم. لیست کامل به شرح زیر است:

  • inner-spin-button
  • media-slider
  • media-sliderthumb
  • media-volume-slider
  • media-volume-sliderthumb
  • push-button
  • searchfield-cancel-button
  • slider-horizontal
  • sliderthumb-horizontal
  • sliderthumb-vertical
  • square-button

توجه داشته باشید که مقدار slider-vertical به عنوان بخشی از این وصله که برای اجازه دادن به <input type=range> عمودی استفاده می شود، حذف نخواهد شد. زمانی که حالت نوشتن عمودی کنترل های فرم به طور کامل پذیرفته شود، حذف خواهد شد.

قبل از غیرفعال شدن، در صورت استفاده از هر یک از کلمات کلیدی بالا، یک هشدار کنسول نمایش داده می شود، اما کلمه کلیدی به عنوان یک مقدار معتبر شناخته می شود.