सीएसएस, अन्य मीडिया सुविधाएं, कीबोर्ड पर फ़ोकस करने वाले स्क्रोल कंटेनर वगैरह के लिए स्कोप वाली स्टाइल.
जब तक अलग से न बताया जाए, तब तक बताए गए बदलाव Android, ChromeOS, Linux, macOS, और Windows के लिए, Chrome बीटा चैनल के नए रिलीज़ पर लागू होते हैं. यहां दिए गए लिंक की मदद से या ChromeStatus.com पर दी गई सूची से सुविधाओं के बारे में ज़्यादा जानें. Chrome 118, 13 सितंबर, 2023 से बीटा वर्शन में उपलब्ध है. आप डेस्कटॉप के लिए Google.com या Android पर Google Play Store पर जाकर नया वर्शन डाउनलोड कर सकते हैं.
सीएसएस
इस रिलीज़ में चार नई सीएसएस सुविधाएं जोड़ी गई हैं.
स्कोप वाली स्टाइल
@scope
नियम की मदद से डेवलपर, दिए गए स्कोपिंग रूट और स्टाइल एलिमेंट के लिए स्कोप स्टाइल के नियम तय कर सकते हैं. ये नियम, उस स्कोपिंग रूट की दूरी के हिसाब से तय किए जाते हैं.
सीएसएस लॉजिकल फ़्लो-रिलेटिव वैल्यू
मौजूदा सीएसएस प्रॉपर्टी में, यहां दी गई नई वैल्यू जोड़ता है:
float: inline-start
float: inline-end
clear: inline-start
clear: inline-end
resize: block
resize: inline
ये फ़्लो-रिलेटिव डायरेक्शनल कीवर्ड, राइटिंग मोड या एलिमेंट या उसके शामिल ब्लॉक के आधार पर फ़िज़िकल वैल्यू हासिल करते हैं.
मीडिया क्वेरी: Preferences-reduced-transparency सुविधा
prefers-reduced-transparency
की मीडिया सुविधा जोड़ी गई. इससे डेवलपर, ओएस में पारदर्शिता कम करने के लिए, वेब कॉन्टेंट को उपयोगकर्ता की चुनी हुई सेटिंग के हिसाब से बदल सकते हैं. जैसे, macOS पर पारदर्शिता कम करें सेटिंग. सही विकल्प reduce
या no-preference
हैं.
ट्रांसफ़ॉर्म-बॉक्स सीएसएस प्रॉपर्टी में स्ट्रोक-बॉक्स, कॉन्टेंट-बॉक्स, और बॉर्डर-बॉक्स के साथ काम करता है
इस सहायता को जोड़ने से, transform
प्रॉपर्टी के लिए रेफ़रंस बॉक्स को कंप्यूट करने के तरीके में बदलाव किया जा सकता है. इसकी मदद से, वीडियो में ज़्यादा बदलाव या ग्राफ़िकल इफ़ेक्ट लागू किए जाते हैं. उदाहरण के लिए, कॉन्टेंट बॉक्स में एक पॉइंट के चारों ओर घूमना, जहां एलिमेंट के बॉर्डर की चौड़ाई से नतीजे पर कोई असर नहीं पड़ता. इसके अलावा, जहां किसी (SVG) एलिमेंट के स्ट्रोक का नतीजे पर असर होना चाहिए. उदाहरण के लिए, ऐसा तब हो सकता है, जब आप स्ट्रोक के साथ-साथ, स्ट्रोक वाले आकार को उसके बीच में घुमाते हों.
एचटीएमएल
कीबोर्ड पर फ़ोकस करने लायक स्क्रोल कंटेनर
क्रमिक फ़ोकस वाले नेविगेशन का इस्तेमाल करके, स्क्रोल कंटेनर को फ़ोकस करने लायक बनाकर, सुलभता को बेहतर बनाता है. इस बदलाव से पहले का टैब बटन, स्क्रोलर पर तब तक फ़ोकस नहीं करता, जब तक tabIndex
को साफ़ तौर पर 0
या इसके बाद के लेवल पर सेट नहीं किया जाता. स्क्रोलर को डिफ़ॉल्ट रूप से फ़ोकस करने लायक बनाने से, जो उपयोगकर्ता माउस का इस्तेमाल नहीं कर सकते या नहीं करना चाहते वे कीबोर्ड के टैब और ऐरो बटन का इस्तेमाल करके, क्लिप किए गए कॉन्टेंट को ऐक्सेस कर सकते हैं. यह तरीका ऐसे स्क्रोलर पर लागू नहीं होता जिनमें कीबोर्ड के फ़ोकस करने लायक एलिमेंट शामिल होते हैं. इसकी वजह यह है कि इन स्क्रोलर को कीबोर्ड के ज़रिए पहले से ही ऐक्सेस किया जा सकता है.
विकल्प के लेबल वाले एट्रिब्यूट से, क्वर्क मोड (पुराने वर्शन पर काम करने की सुविधा) के काम करने का तरीका हटाएं
विकल्प एलिमेंट, label
एट्रिब्यूट के साथ काम करते हैं. इस वजह से विकल्प एलिमेंट के चाइल्ड टेक्स्ट के बजाय, एट्रिब्यूट के अंदर वाले टेक्स्ट के साथ रेंडर करने का विकल्प होता है. क्वर्क मोड में यह सुविधा बंद रहती है. इसमें लेबल एट्रिब्यूट को अनदेखा किया जाता है और चाइल्ड टेक्स्ट को हमेशा रेंडर किया जाता है. इस बदलाव के लिए, स्टैंडर्ड मोड और क्वर्क मोड (पुराने वर्शन पर काम करने की सुविधा) दोनों में, लेबल एट्रिब्यूट का इस्तेमाल किया जाएगा.
वेब एपीआई
प्राइवसी सैंडबॉक्स (पीएसबी) के लिए रजिस्ट्रेशन
जैसे-जैसे Privacy Sandbox के लिए काम के और मेज़रमेंट से जुड़े एपीआई सभी के लिए उपलब्ध होने लगेंगे, हम यह पक्का करना चाहते हैं कि इन टेक्नोलॉजी का सही तरीके से और पारदर्शिता के साथ इस्तेमाल किया जाए. इन एपीआई में, Attribution Reporting, Protected Audience API, Topics API, Private एग्रीगेशन API, और Shared Storage API शामिल है. PSB में, Privacy Sandbox की प्रासंगिकता और मेज़रमेंट के एपीआई के लिए, डेवलपर के तौर पर रजिस्टर करने की नई प्रोसेस लॉन्च की जा रही है. Chrome, रजिस्ट्रेशन सर्वर से (कॉम्पोनेंट अपडेटर के ज़रिए) रजिस्टर की गई साइटों की सूची फ़ेच करेगा. इसके बाद, इसका इस्तेमाल Privacy Sandbox APIs को ऐक्सेस करने के लिए किया जाएगा.
JavaScript के ज़रिए सेट की गई ऐसी सभी कुकी ब्लॉक करें जिनमें कंट्रोल वर्ण शामिल हैं
यह अपडेट करता है कि JavaScript के ज़रिए सेट की गई कुकी सेट में मौजूद कंट्रोल कैरेक्टर को कैसे मैनेज किया जाता है. खास तौर पर, सभी कंट्रोल वर्ण पूरी कुकी को अस्वीकार करते हैं. पहले, शून्य वर्ण, नई लाइन शुरू करने वाले वर्ण या कुकी लाइन में मौजूद लाइन फ़ीड वर्ण की वजह से, इसे पूरी तरह से अस्वीकार करने के बजाय छोटा किया जाता था. इसकी वजह से, कुछ मामलों में नुकसान पहुंचाने वाले व्यवहार की संभावना बढ़ सकती थी. यह व्यवहार Chrome को RFC6265bis के नए ड्राफ़्ट में बताए गए व्यवहार के साथ अलाइन करता है. इस बदलाव को --disable-features=BlockTruncatedCookies
या BlockTruncatedCookies एंटरप्राइज़ से जुड़ी नीति का इस्तेमाल करके, बंद किया जा सकता है. ये नीतियां, इस बदलाव की वजह से कोई गड़बड़ी होने पर, कई माइलस्टोन तक लागू होंगी.
सभी भाषाओं में एक समान फ़ॉन्ट साइज़ होना चाहिए
कम से कम फ़ॉन्ट साइज़ की डिफ़ॉल्ट सेटिंग को बदलकर, इंटरऑपरेबिलिटी और सुलभता को बेहतर बनाने के लिए, सात भाषाओं (ऐरेबिक, फ़ारसी, जैपनीज़, कोरियन, थाई, सिंप्लिफ़ाइड, और ट्रेडिशनल चाइनीज़) के लिए, डिफ़ॉल्ट रूप से इसे बंद करता है. इस बदलाव से पहले, यह सेटिंग सूची में दी गई सात भाषाओं को छोड़कर सभी भाषाओं के लिए डिफ़ॉल्ट रूप से बंद थी. इस बदलाव की वजह से, ये भाषाएं अन्य भाषाओं में उपलब्ध हो जाती हैं. ध्यान दें, यह बदलाव कम से कम फ़ॉन्ट साइज़ की सुविधा को बदलने के बारे में नहीं है. हालांकि, यह सुलभता सुविधाओं और कॉन्टेंट को आसानी से पढ़ने में किसी तरह का बदलाव किए बिना उपलब्ध होगा.
समान दस्तावेज़ वाले नेविगेशन पर UA ट्रांज़िशन का पता लगाएं
वेब पर नेविगेट करने के दौरान, उपयोगकर्ताओं को आसानी से दिखने वाले विज़ुअल ट्रांज़िशन की मदद से, सीखने-समझने की क्षमता कम हो जाती है. इससे, उपयोगकर्ताओं को कॉन्टेंट समझने में मदद मिलती है. हालांकि, अगर साइट के लेखक और UA, दोनों में ये ट्रांज़िशन शामिल होते हैं, तो उपयोगकर्ता अनुभव खराब हो सकता है. इन ट्रांज़िशन से उपयोगकर्ता के लिए भ्रम की स्थिति पैदा हो सकती है. यह एपीआई ऐसे मामलों से बचाता है, ताकि यह पक्का किया जा सके कि एक बार में सिर्फ़ एक विज़ुअल ट्रांज़िशन किया गया हो. एपीआई, PopStateEvent
और NavigateEvent
में बूलियन जोड़कर यह बताता है कि UA ने इस नेविगेशन के लिए विज़ुअल ट्रांज़िशन किया है या नहीं. डेवलपर इसका इस्तेमाल, अपनी पसंद के मुताबिक किए गए ट्रांज़िशन को स्किप करने के लिए कर सकते हैं.
यूआरएल पार्सर, यूआरएल पाथ में प्रतिशत के तौर पर एन्कोड किए गए ASCII वर्णों को डिकोड नहीं करेगा
इन बदलावों से यूआरएल पार्सर, यूआरएल के पाथ में प्रतिशत के तौर पर एन्कोड किए गए ASCII वर्णों को डिकोड नहीं करता, जैसे कि "%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 से विज्ञापन उन उपयोगकर्ताओं को टारगेट कर सकते हैं जो वेब पर पहले की गई कुछ गतिविधियों की वजह से, दिए गए इंटरेस्ट ग्रुप में शामिल हैं. इस सुविधा की मदद से, Protected Audience से टारगेटिंग की सुविधा चालू की जा सकती है. इसके लिए, नए विज्ञापनों को सिर्फ़ उन उपयोगकर्ताओं को टारगेट करने की अनुमति दी जाती है जो किसी खास इंटरेस्ट ग्रुप से नहीं जुड़े हैं. इस तरह, हम विज्ञापन देने वालों को उपयोगकर्ताओं के नए ग्रुप को टारगेट करने की सुविधा दे रहे हैं. इसके लिए, वे Protected Audience API के निजता बनाए रखने वाले मौजूदा सिद्धांतों का इस्तेमाल कर रहे हैं.
पेमेंट के लिए उपयोगकर्ता को ऐक्टिवेट करने की ज़रूरी शर्त हटाएं
पेमेंट के अनुरोध के फ़्लो में आने वाली समस्याओं को कम करने में डेवलपर की मदद करने के लिए, हम पेमेंट के अनुरोध और सुरक्षित तरीके से पेमेंट की पुष्टि करने से, उपयोगकर्ता को ऐक्टिवेट करने की ज़रूरी शर्त को हटा रहे हैं. इस बदलाव के तहत, सुरक्षा और निजता से जुड़े खतरों को कम करने के लिए, स्पैम और क्लिकजैकिंग को कम किया जा रहा है.
एक्सटेंशन सर्विस वर्कर में WebUSB
यह नीति, वेब डेवलपर को ब्राउज़र एक्सटेंशन के ज़रिए रजिस्टर किए गए सर्विस वर्कर के सामने WebUSB API की जानकारी दिखाकर, एक्सटेंशन इवेंट का जवाब देते समय WebUSB API का इस्तेमाल करने की अनुमति देती है. फ़िलहाल, यह एपीआई, साइटों पर रजिस्टर किए गए सर्विस वर्कर को नहीं दिखता.
एक्सएमएल दस्तावेज़ में, लगातार आने वाले सीडेटा (कैरेक्टर डेटा) सेक्शन को एक नोड में मर्ज किया जाता है
libxml में गड़बड़ी की वजह से, एक्सएचटीएमएल दस्तावेज़ में सीएटीए सेक्शन, कभी-कभी गलती से कई नोड बना सकते हैं. ऐसा, दस्तावेज़ के साइज़ और दस्तावेज़ में मौजूद CDATA सेक्शन की जगह के आधार पर किया जाता है. जब एक ही CDATA सेक्शन में कई इनपुट पार्सर वाले हिस्से शामिल होते हैं, तो libxml बफ़र करता है और CDATA इनपुट को 300 बाइट रन करता है. इससे एक CDATA सेक्शन अचानक से कई नोड में बदल जाता है (अगर इनपुट समूह की लंबाई 300 बाइट से ज़्यादा है). इस बदलाव से, पार्स करने के दौरान सिबलिंग CDATA सेक्शन के नोड, एक ही CDATA सेक्शन में मर्ज हो जाते हैं. इससे पार्स करने के दौरान libxml की गड़बड़ी ठीक हो जाती है. हालांकि, इससे लिखे गए अलग-अलग नोड भी मर्ज हो जाते हैं. उदाहरण के लिए: <![CDATA[foo]]><!CDATA[bar]]>
इससे "foobar": CDATA "foobar"
कॉन्टेंट वाला एक CDATA डीओएम नोड बनेगा.
beforeunload हैंडलर डायलॉग स्थिति बदलें
beforeunload
इवेंट के लिए, 'रद्द करें' डायलॉग बॉक्स में दो नए बदलाव किए गए हैं.
अगर event.preventDefault()
को कॉल किया जाता है, तो प्रॉम्प्ट रद्द करने का डायलॉग बॉक्स.
अगर event.returnValue
खाली स्ट्रिंग है, तो 'रद्द करें' डायलॉग बॉक्स न दिखाएं.
ऑरिजिन ट्रायल चल रहा है
Chrome 118 में, यहां दिए गए नए ऑरिजिन ट्रायल के लिए ऑप्ट इन किया जा सकता है.
WebRTC कोड में बदला गया ट्रांसफ़ॉर्म: मेटाडेटा के फ़ंक्शन में बदलाव करें
WebRTC एन्कोडर ट्रांसफ़ॉर्म एपीआई में ऐसी सुविधाएं जोड़ता है जो ऑडियो और वीडियो फ़्रेम के मेटाडेटा में बदलाव करने की अनुमति देती हैं. ऐसे कई मामले सामने आए हैं जिनमें WebRTC की कोड में बदली गई मीडिया फ़ाइलों को डिकोड किए बिना उनमें बदलाव करना ज़रूरी है. इनमें शामिल हैं:
- पहले एन्कोड किया गया डेटा भेजा जा रहा है.
- कोड में बदले गए फ़ॉर्म में मिला डेटा भेजना.
- कोड में बदले गए रूप में डेटा पाना और उसे फ़ॉरवर्ड करना.
खास तौर पर, हम उन मीडिया फ़ाइलों को बिना गड़बड़ी के फ़ॉरवर्ड करने के मामले में मदद करना चाहते हैं जो एक जैसे मीडिया पेलोड उपलब्ध कराते हैं, लेकिन अलग-अलग मेटाडेटा के साथ.
RTCEncodeFrameSetMetadata ऑरिजिन ट्रायल के लिए, रजिस्टर करें.
बंद करना और हटाना
Chrome के इस वर्शन में, सुविधाओं को बंद करने और हटाने के बारे में नीचे बताया गया है. पहले से तय, बंद हो चुके, और पहले से हटाए गए तरीकों की सूची के लिए ChromeStatus.com पर जाएं.
Chrome की यह रिलीज़, नीचे दी गई सुविधा को हटा देती है.
बिना स्टैंडर्ड वाले कुछ कीवर्ड को हटाना
Chrome 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>
वर्टिकल को अनुमति देने के लिए किया गया है. ऐसा होगा
फ़ॉर्म कंट्रोल के वर्टिकल राइटिंग मोड के पूरी तरह इस्तेमाल होने के बाद, यह सेटिंग हटा दी जाती है.
खाता बंद किए जाने से पहले, ऊपर दिए गए किसी भी कीवर्ड का इस्तेमाल करने पर, कंसोल से जुड़ी एक चेतावनी दिखेगी. हालांकि, कीवर्ड की पहचान मान्य वैल्यू के तौर पर की जाएगी.