کروم 142 بتا

تاریخ انتشار: 1 اکتبر 2025

مگر اینکه غیر از این ذکر شود، این تغییرات برای انتشار کانال بتا Chrome 142 برای Android، ChromeOS، Linux، macOS و Windows اعمال می‌شود. از پیوندهای ارائه شده یا در ChromeStatus.com درباره این ویژگی‌ها بیشتر بیاموزید. Chrome 142 beta را از Google.com برای دسکتاپ یا فروشگاه Google Play برای Android دانلود کنید.

CSS و UI

:target-before و :target-after شبه کلاس ها

این شبه کلاس‌ها با نشانگرهای پیمایشی مطابقت دارند که قبل یا بعد از نشانگر فعال (تطبیق :target-current ) در همان گروه نشانگر پیمایش قرار دارند، همانطور که با ترتیب درخت مسطح تعیین می‌شود:

  • :target-before : با تمام نشانگرهای پیمایشی که قبل از نشانگر فعال به ترتیب درخت تخت در گروه قرار دارند مطابقت دارد.
  • :target-after : همه نشانگرهای پیمایشی که نشانگر فعال را به ترتیب درختی تخت در گروه دنبال می کنند مطابقت دارد.

موقعیت یابی مطلق برای عنصر ::view-transition

انتقال‌های View از یک زیردرخت شبه عنصر استفاده می‌کنند که ::view-transition ریشه آن انتقال است. قبلاً عنصر ::view-transition مشخص شده بود که position: fixed داشته باشد. گروه کاری CSS تصمیم گرفت این position: absolute و بنابراین Chrome اکنون این تغییر را منعکس می کند.

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

ویژگی activeViewTransition در سند

View Transitions API به توسعه دهندگان اجازه می دهد تا انتقال بصری بین حالت های مختلف را شروع کنند. نقطه ورود اولیه SPA startViewTransition() است که یک شی انتقال را برمی گرداند. این شی شامل چندین وعده و عملکرد برای ردیابی پیشرفت انتقال است و به شما امکان می دهد انتقال ها را دستکاری کنید، برای مثال، با رد کردن انتقال یا تغییر انواع آن.

از Chrome 142، توسعه دهندگان دیگر نیازی به ذخیره این شیء ندارند. ویژگی document.activeViewTransition این شی را نشان می‌دهد یا اگر هیچ انتقالی در حال انجام نباشد، null .

این همچنین در مورد انتقال های MPA صدق می کند، جایی که شی فقط از طریق رویدادهای pageswap و pagereveal در دسترس است. در این به‌روزرسانی، document.activeViewTransition برای مدت زمان انتقال روی این شی تنظیم می‌شود.

نحو محدوده برای پرس و جوهای محفظه سبک و if()

کروم پرس و جوهای سبک CSS و تابع if() را با افزودن پشتیبانی از نحو محدوده بهبود می بخشد.

پرس و جوهای سبک را فراتر از تطابق دقیق مقدار گسترش می دهد (به عنوان مثال، style(--theme: dark) ). توسعه‌دهندگان می‌توانند از عملگرهای مقایسه (مانند > و < ) برای مقایسه ویژگی‌های سفارشی، مقادیر تحت اللفظی (مثلاً 10 پیکسل یا 25%) و مقادیر توابع جایگزینی مانند attr() و env() استفاده کنند. برای مقایسه معتبر، هر دو طرف باید به یک نوع داده تصمیم بگیرند. محدود به انواع عددی زیر است: <length> ، <number> ، <percentage> ، <angle> ، <time> ، <frequency> و <resolution> >.

مثال ها:

یک ویژگی سفارشی را با طول تحت اللفظی مقایسه کنید:

@container style(--inner-padding > 1em) {
  .card {
    border: 2px solid;
  }
}

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

@container style(1em < 20px) {
  /* ... */
}

استفاده از محدوده های سبک در if() :

.item-grid {
  background-color: if(style(attr(data-columns, type<number>) > 2): lightblue; else: white);
}

Invokers بهره (ویژگی interestfor )

کروم یک ویژگی interestfor به عناصر <button> و <a> اضافه می کند. این ویژگی رفتارهای "علاقه" را به عنصر اضافه می کند. هنگامی که یک کاربر به عنصر "علاقه خود را نشان می دهد"، اقدامات روی عنصر هدف فعال می شوند، به عنوان مثال، نشان دادن پاپاور. عامل کاربر تشخیص می دهد که کاربر از طریق روش هایی مانند نگه داشتن نشانگر روی عنصر، زدن کلیدهای میانبر ویژه روی صفحه کلید، یا فشار طولانی عنصر روی صفحه نمایش لمسی، زمانی که کاربر به عنصر "علاقه مندی" نشان می دهد. هنگامی که علاقه نشان داده می شود یا از بین می رود، یک InterestEvent روی هدف شلیک می شود که دارای اقدامات پیش فرض برای پاپاورها است، مانند نمایش و پنهان کردن پاپاور.

ویژگی font-language-override

کروم از ویژگی font-language-override CSS پشتیبانی می کند. این ویژگی به توسعه‌دهندگان اجازه می‌دهد تا با تعیین یک تگ زبان چهار کاراکتری مستقیماً در CSS، زبان سیستم مورد استفاده برای جایگزینی علامت‌های OpenType را لغو کنند.

این کنترل تایپوگرافی ریز دانه را فعال می کند، که به ویژه برای محتوای چند زبانه یا فونت هایی با انواع حروف خاص زبان مفید است.

ویژگی download در عنصر SVG <a>

کروم از ویژگی download در رابط SVGAElement پشتیبانی می کند که با مشخصات SVG 2 همسو می شود. ویژگی download به نویسندگان این امکان را می دهد که مشخص کنند به جای پیمایش به آن، هدف یک ابر پیوند SVG را دانلود می کند. این منعکس کننده رفتاری است که قبلاً در HTMLAnchorElement پشتیبانی شده است. قابلیت همکاری در مرورگرهای اصلی را ارتقا می‌دهد و رفتار سازگار بین عناصر HTML و SVG <a> را تضمین می‌کند و تجربه توسعه‌دهنده و انتظارات کاربر را بهبود می‌بخشد.

برابری موبایل و دسکتاپ برای حالت‌های رندر منتخب عنصر

با استفاده از size و multiple ویژگی، عنصر <select> را می توان به عنوان یک لیست درون صفحه یا یک دکمه با یک پنجره بازشو ارائه کرد. با این حال، این حالت‌ها در کروم موبایل و دسکتاپ در دسترس نیستند. رندر جعبه لیست درون صفحه در تلفن همراه در دسترس نیست و دکمه ای با یک پنجره بازشو در دسکتاپ در دسترس نیست وقتی ویژگی multiple وجود دارد.

این به‌روزرسانی فهرست باکس را به موبایل و یک پنجره بازشو چند انتخابی را به دسک‌تاپ اضافه می‌کند و تضمین می‌کند که انتخاب‌ها با size و ویژگی‌های multiple منجر به یک حالت رندر در تلفن همراه و دسک‌تاپ می‌شوند. تغییرات به طور خلاصه به شرح زیر است:

  • زمانی که مشخصه size مقداری بیشتر از 1 داشته باشد، همیشه از رندر درون صفحه استفاده می شود. دستگاه های تلفن همراه قبلاً این را نادیده می گرفتند.
  • هنگامی که ویژگی multiple بدون ویژگی size تنظیم می شود، از رندر درون صفحه استفاده می شود. دستگاه‌های تلفن همراه قبلاً از یک پنجره بازشو به‌جای فهرست درون صفحه استفاده می‌کردند.
  • هنگامی که ویژگی multiple با size=1 تنظیم می شود، از یک پنجره بازشو استفاده می شود. دستگاه‌های رومیزی قبلاً از یک لیست درون صفحه استفاده می‌کردند.

فعال‌سازی چسبنده کاربر در مسیرهای ناوبری آغاز شده توسط رندرکننده همان مبدا

کروم حالت فعالسازی کاربر چسبنده را پس از اینکه صفحه به صفحه دیگری با همان مبدا هدایت می‌شود، حفظ می‌کند. عدم فعال سازی کاربر در صفحه پس از ناوبری از برخی موارد استفاده جلوگیری می کند، به عنوان مثال، نمایش صفحه کلید مجازی در فوکوس خودکار. این امر توسعه دهندگانی را که می خواهند MPA را روی SPA بسازند مسدود کرده است.

این درخواست‌های ناوبری آغاز شده توسط مرورگر (بارگیری مجدد، پیمایش تاریخچه، URL تایپ شده در نوار آدرس و غیره) را پوشش نمی‌دهد.

API های وب

WebGPU: ویژگی primitive_index

WebGPU یک قابلیت اختیاری جدید اضافه می کند که یک سایه بان جدید WGSL به primitive_index را نشان می دهد. این یک نمایه اولیه برای سایه زن های قطعه بر روی سخت افزار پشتیبانی شده، شبیه به vertex_index و instance_index داخلی ارائه می دهد. شاخص اولیه برای تکنیک های گرافیکی پیشرفته مانند هندسه مجازی سازی شده مفید است.

WebGPU: قالب‌های بافت tier1 و tier2

پشتیبانی از فرمت بافت GPU را با قابلیت هایی مانند رندر پیوست، ترکیب، نمونه برداری چندگانه، حل، و storage_binding گسترش دهید.

ویژگی DataTransfer برای رویدادهای ورودی insertFromPaste ، insertFromDrop و insertReplacementText

ویژگی dataTransfer را در رویدادهای ورودی با مقادیر inputType از insertFromPaste ، insertFromDrop و insertReplacementText پر کنید تا دسترسی به کلیپ بورد و داده‌های کشیدن و رها کردن را در حین عملیات ویرایش در عناصر محتوای قابل ویرایش فراهم کنید.

شی dataTransfer حاوی همان داده‌هایی است که در طول رویداد beforeinput موجود بود.

این ویژگی فقط برای عناصر قابل ویرایش قابل استفاده است. برای کنترل های فرم (textarea ، input )، رفتار بدون تغییر باقی می ماند.

این ویژگی کروم را با سافاری و فایرفاکس سازگار می کند.

جلسه رسانه: دلیل را به جزئیات عمل enterpictureinpicture اضافه کنید

enterPictureInPictureReason به MediaSessionActionDetails ارسال شده به اکشن enterpictureinpicture در Media Session API اضافه می کند. این به توسعه دهندگان این امکان را می دهد که بین اقدامات enterpictureinpicture که به صراحت توسط کاربر (به عنوان مثال، از دکمه ای در عامل کاربر) راه اندازی می شوند و اقدامات enterpictureinpicture که به طور خودکار توسط عامل کاربر به دلیل مسدود شدن محتوا فعال می شوند، تمایز قائل شوند.

سوگیری متنی API Web Speech

این به‌روزرسانی، وب‌سایت‌ها را قادر می‌سازد تا با افزودن فهرست عبارات شناسایی به Web Speech API از سوگیری متنی برای تشخیص گفتار پشتیبانی کنند.

توسعه دهندگان می توانند فهرستی از عبارات را ارائه کرده و آنها را به روز کنند تا به مدل های تشخیص گفتار به نفع آن عبارات تعصب داشته باشند. این به بهبود دقت و ارتباط برای تشخیص گفتار مخصوص دامنه و شخصی کمک می کند.

اعتبار سنجی رمز MIME *+json برای ماژول های JSON

پاسخ‌های اسکریپت ماژول JSON را که نوع یا نوع فرعی آن نوع MIME حاوی نقاط کد رمز غیر HTTP (مثلاً فاصله‌ها) است، در صورت تطبیق با *+json رد کنید. این با مشخصات MIME Sniffing و سایر موتورها مطابقت دارد. این بخشی از منطقه تمرکز ماژول های Interop2025 است.

FedCM—پشتیبانی که منشا iframe شخص ثالث را در رابط کاربری نشان می دهد

قبل از Chrome 142، FedCM همیشه سایت سطح بالا را در رابط کاربری خود نشان می داد.

زمانی که iframe از نظر مفهومی شخص اول باشد، این کار به خوبی کار می‌کند (برای مثال، foo.com ممکن است یک iframe foostatic.com داشته باشد، که برای کاربر معنی‌دار نیست).

اما اگر iframe واقعا شخص ثالث است، بهتر است مبدا iframe در رابط کاربری نشان داده شود تا کاربران بهتر متوجه شوند که اعتبار خود را با چه کسی به اشتراک می‌گذارند. برای مثال، ممکن است یک ویرایشگر عکس در یک برنامه وب انتشار کتاب تعبیه شده باشد و ممکن است بخواهد به کاربران اجازه دهد به فایل‌هایی که قبلاً با ویرایشگر عکس ذخیره کرده‌اند دسترسی داشته باشند. این قابلیت هم اکنون در دسترس است.

جداسازی فرآیند با کلید مبدا

خط مشی جداسازی فرآیند را از قفل کردن فرآیندها به یک سایت (به عنوان مثال، example.com ) به قفل کردن آنها به یک مبدا خاص (مثلا foo.example.com ) تغییر می دهد.

برای افزایش بیشتر امنیت، Chrome به سمت یک مدل جداسازی فرآیند ریزتر به نام «Origin Isolation» حرکت می‌کند. Chrome از "Site Isolation" استفاده کرد، که مبداهای مختلف را از یک سایت، به عنوان مثال، a.example.com و b.example.com در یک فرآیند رندر واحد گروه بندی کرد.

با Origin Isolation، هر مبدأ فردی (مانند https://foo.example.com ) در فرآیند رندر خود جدا می شود. معماری امنیتی Chrome را با تراز کردن مرزهای فرآیند با مدل امنیتی مبتنی بر مبدا اصلی وب تقویت می‌کند و محافظت بیشتری در برابر آسیب‌پذیری‌های احتمالی در سایت‌ها ارائه می‌دهد.

رویدادهای قابل تعامل pointerrawupdate فقط در زمینه های امن نمایش داده می شوند

مشخصات PointerEvents، pointerrawupdate در سال 2020 به زمینه‌های ایمن محدود می‌کند، و هم شلیک رویداد و هم شنوندگان رویداد جهانی را از زمینه‌های ناامن پنهان می‌کند. با این به روز رسانی، کروم با مشخصات به روز شده مطابقت دارد و با سایر مرورگرهای اصلی قابل همکاری می شود.

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

در Chrome 142 می‌توانید آزمایش‌های اصلی جدید زیر را انتخاب کنید.

اعتبار جلسه Bound Device

راهی برای وب سایت ها برای اتصال ایمن یک جلسه به یک دستگاه.

این به سرورها اجازه می دهد تا به طور ایمن یک جلسه را به یک دستگاه متصل کنند. مرورگر جلسه را به صورت دوره‌ای در صورت درخواست سرور با اثبات داشتن کلید خصوصی تمدید می‌کند.

TCP Socket Pool در هر سایت سطح بالا

این آزمایش تأثیر تغییر اندازه استخر سوکت TCP هر پروفایل را از 256 (پیش‌فرض) به 513 ارزیابی می‌کند، در حالی که یک درپوش برای هر سطح بالای سایت 256 اضافه می‌کند (برای اطمینان از اینکه هیچ دو زبانه نمی‌توانند استخر را خسته کنند). امکان سنجی افزایش حد هر پروفایل به 512 مورد مطالعه قرار گرفت و نتایج منفی به همراه نداشت. سقف 256 برای هر سطح بالای سایت برابر با حد پیش فرض در هر پروفایل است، بنابراین نباید بر عملکرد تأثیر منفی بگذارد. این محدودیت ها به طور مستقل برای استخر WebSocket و استخر سوکت معمولی (HTTP) اعمال می شوند.

هدف این است که در صورت عدم بروز اثرات منفی، این آزمایش را مستقیماً راه اندازی کنیم.