डार्क मोड को जबरन लागू न करने का अनुरोध
(iamvishnu.com)- अगर कोई वेबसाइट सिर्फ डार्क मोड देती है, तो लंबे लेख पढ़ने वाले कुछ उपयोगकर्ताओं के लिए यह आंखों की थकान और असुविधा पैदा कर सकता है; इसलिए विकल्प या आरामदायक रंग संयोजन ज़रूरी हैं
- असली मुद्दा डार्क मोड खुद नहीं, बल्कि टेक्स्ट और बैकग्राउंड का contrast ratio है; शुद्ध सफेद टेक्स्ट और पूरी तरह काला बैकग्राउंड 21:1 contrast देता है, जो आंखों पर भारी पड़ सकता है
- काले बैकग्राउंड पर
#888888ग्रे टेक्स्ट इस्तेमाल करने से contrast ratio 5.9:1 तक घट जाता है, जो अत्यधिक contrast की तुलना में पढ़ने में अधिक आरामदायक डार्क मोड का उदाहरण है - WCAG 2.1 सामान्य टेक्स्ट के लिए केवल 4.5:1 का न्यूनतम contrast ratio मांगता है और अधिकतम contrast पर कोई सीमा नहीं लगाता, इसलिए 21:1 संयोजन भी नियमों के हिसाब से accessible माना जा सकता है
- WCAG 3.0 ड्राफ्ट की Maximum text contrast आवश्यकता 4 सितंबर 2025 के अपडेट में हटा दी गई थी, और forced dark mode वाले लेखों के लिए अभी CSS को सीधे override करने जैसे अस्थायी उपायों की जरूरत पड़ती है
जब forced dark mode पढ़ना कठिन बना देता है
- डार्क मोड के लिए ही डिज़ाइन की गई कई वेबसाइटें और निजी ब्लॉग हैं, और कुछ साइटों पर एक पैराग्राफ पढ़ने से पहले ही आंखों में असुविधा हो सकती है
- डार्क मोड कुछ स्थितियों में उपयोगी है, लेकिन जब इसे उपयोगकर्ता को विकल्प दिए बिना जबरन लागू किया जाता है, तो यह खराब user experience बन जाता है
- लंबे डार्क मोड लेख पढ़ने के बाद आंखें तुरंत अनुकूल नहीं हो पातीं और ऐसा लग सकता है जैसे क्षैतिज धारियां लगातार दिख रही हों
समस्या का केंद्र contrast ratio है
- डार्क मोड में असुविधा तय करने वाला मुख्य तत्व टेक्स्ट और बैकग्राउंड के बीच का contrast ratio है
- शुद्ध सफेद टेक्स्ट को पूरी तरह काले बैकग्राउंड पर रखने से contrast ratio 21:1 हो जाता है
- यह संयोजन आंखों पर दबाव डाल सकता है और पढ़ना कठिन बना सकता है
- काले बैकग्राउंड पर
#888888ग्रे टेक्स्ट इस्तेमाल करने से contrast ratio घटकर 5.9:1 हो जाता है- यह उसी डार्क मोड में अधिक आराम से पढ़े जा सकने वाले रंग संयोजन का उदाहरण है
- contrast ratio जितना अधिक हो, हमेशा उतना बेहतर हो—ऐसा नहीं है; डार्क मोड में अत्यधिक contrast उल्टे असुविधा बढ़ा सकता है
WCAG मानक क्या चूक जाते हैं
- मौजूदा WCAG 2.1 SC 1.4.3 सामान्य टेक्स्ट के लिए न्यूनतम contrast ratio 4.5:1 की मांग करता है
- WCAG 2.1 में अधिकतम contrast ratio की कोई सीमा नहीं है
- शुद्ध सफेद टेक्स्ट और पूरी तरह काले बैकग्राउंड जैसे 21:1 contrast वाले संयोजन भी नियमों के हिसाब से पूरी तरह accessible माने जा सकते हैं
- भले ही वे कई उपयोगकर्ताओं को असुविधा दें, मौजूदा guidelines डार्क मोड में अत्यधिक contrast की समस्या को संबोधित नहीं करतीं
- WCAG 3.0 में एक exploratory requirement के रूप में Maximum text contrast जोड़े जाने की योजना थी
- दिसंबर 2025 के अपडेट के अनुसार, यह requirement 4 सितंबर 2025 के WCAG 3.0 draft update में हटा दी गई
- contrast ratio mathematics पर GitHub Issue अब भी खुला है
अभी उपलब्ध workaround
- अगर कोई महत्वपूर्ण लेख केवल forced dark mode में उपलब्ध है, तो browser Developer Tools में CSS को override करके रंगों को invert किया जा सकता है
- अगर अलग plugin इस्तेमाल नहीं करना चाहते, तो बेहतर समाधान आने तक Developer Tools ही अस्थायी उपाय बने हुए हैं
जहां डार्क मोड अच्छी तरह फिट बैठता है
- यह डार्क मोड को पूरी तरह खारिज करने की बात नहीं है; नीचे की स्थितियों में डार्क मोड पसंद किया जाता है
- बत्ती बंद कमरे में OLED screen पर लेख पढ़ते समय, जैसे सोने से पहले फोन पर लेख पढ़ना
- कोड लिखते समय, क्योंकि लगभग सभी IDE डिफॉल्ट रूप से आरामदायक contrast ratio वाला डार्क मोड देते हैं
- जब किसी वेबसाइट के डार्क मोड में आरामदायक contrast ratio हो
- लेख के बाद Hacker News चर्चा में सहमति और आलोचना दोनों आईं, और शुरुआती OEM के dark/light mode विकल्प, contrast ratio का महत्व, निजी अनुभव, medical conditions, accessibility issues और workarounds जैसे विषयों पर चर्चा हुई
1 टिप्पणियां
Hacker News की राय
Dark mode मूल रूप से पारंपरिक डिफ़ॉल्ट के ज़्यादा क़रीब था
शुरुआती हरे/ऐंबर अक्षर और काले मोनोक्रोम डिस्प्ले, काली पृष्ठभूमि पर धूसर DOS टेक्स्ट मोड, C-64 की गहरी नीली पृष्ठभूमि पर हल्के नीले अक्षर, Apple II की काली पृष्ठभूमि पर धूसर/सफ़ेद—ऐसा ही था
GUI में भी Amiga का डिफ़ॉल्ट Workbench गहरी नीली पृष्ठभूमि वाला था, और उपयोगकर्ता सभी palettes चुन सकते थे
ज़्यादातर apps में काले अक्षरों के साथ सफ़ेद स्क्रीन को डिफ़ॉल्ट बनाने वाला Microsoft Windows था, क्योंकि उसे कागज़ जैसा माना गया, लेकिन कागज़ सफ़ेद होने पर भी चमकता हुआ सफ़ेद नहीं होता, इसलिए वह बदलाव कष्टदायक था
Dark mode के वापस आने से खुशी है, लेकिन forced dark mode नहीं बल्कि विकल्प होना चाहिए, और light mode भी हो सके तो पूरी चमक वाला सफ़ेद न हो
डिवाइस या मॉनिटर को चमकते सफ़ेद पर नहीं रखना चाहिए; brightness कम रखनी चाहिए ताकि वह बगल में रखे कागज़ जैसा दिखे
इस paradigm को बदलने वाला Windows भी नहीं था; व्यापक रूप से फैले consumer devices में Mac पहले आया था, और उसका built-in CRT भी पारंपरिक office lighting में कागज़ से कम चमकीला था
शुरुआती कंप्यूटरों में गहरे रंग इसलिए थे क्योंकि resolution कम था और pixel brightness फैल जाती थी, जिससे पढ़ना आसान होता था; तकनीक बेहतर होने पर यह समस्या ग़ायब हो गई, और चाहे स्क्रीन हो या प्रिंट, हल्की पृष्ठभूमि पर गहरे अक्षर आँखों के लिए ज़्यादा आरामदेह हैं
ऐंबर और हरे रंग भी सफ़ेद अक्षरों से ज़्यादा आरामदायक माने जाते थे, और फ़र्क इतना बड़ा है कि सीधी तुलना करना मुश्किल है
पूरी तरह काले की जगह कुछ brightness वाली background हो तो dark mode ज़्यादा लोगों के लिए ठीक हो सकता है, लेकिन फिर OLED के ज़्यादातर फ़ायदे खो जाते हैं
शुरुआती PC के DOS/Unix ने उस समय की display characteristics के कारण काली पृष्ठभूमि इस्तेमाल की थी, लेकिन उससे पहले जानकारी सफ़ेद कागज़ पर साझा होती थी, और शुरुआती इंटरनेट ने फिर से सफ़ेद पृष्ठभूमि पर काले अक्षर वापस लाए
आख़िरकार सच्चा डिफ़ॉल्ट जैसा कुछ नहीं है; यह इस पर निर्भर करता है कि आप कब जुड़े
Amiga Workbench की गहरी नीली background भी लागत की वजह से थी। माना गया था कि बहुत लोग composite video output से TV पर जोड़कर देखेंगे, और सफ़ेद अक्षर व नीली background TV पर अच्छी दिखती थी
1080 monitor की कीमत A1000 की क़ीमत का लगभग एक-तिहाई थी, और संभव है कि कई A500 क्रिसमस पर खोले जाने के बाद काफ़ी समय तक TV से जुड़े रहे हों
मैंने Amiga के लगभग सभी word processors इस्तेमाल किए हैं; WordPerfect को छोड़कर सबमें सफ़ेद background पर काले अक्षर थे, और WordPerfect में भी बदला जा सकता था, बस DOS से मेल रखने के लिए डिफ़ॉल्ट नीला/सफ़ेद रखा गया था
गहरी background से flicker कम दिखाई देता था, और 1990s में ऊँचे refresh rate वाले CRT आम होने पर flicker की समस्या घटी, इसलिए light mode डिफ़ॉल्ट बन गया
रुकिए, अगर किसी website में सिर्फ़ हल्के अक्षर और गहरी पृष्ठभूमि है, तो वही उस साइट की theme और mood है
Dark mode तभी मौजूद है जब light mode भी हो, और उल्टा भी यही सच है
आप किसी अनचाही website को दोनों modes बनाए रखने के लिए मजबूर नहीं कर सकते
अगर dark mode brand identity का हिस्सा है, तो कहा गया है कि टेक्स्ट के लिए आरामदायक contrast ratio चुनना चाहिए
डिफ़ॉल्ट और non-configurable light mode बहुत लंबे समय तक रहा है, और उसकी भरपाई के लिए Dark Reader जैसे plugins भी हैं
लेकिन उल्टा, light mode को force करने वाली infrastructure बहुत कम है
ज़्यादातर हालात में light mode, dark mode से बेहतर है। Dark mode सिर्फ़ तब बेहतर है जब आप अँधेरे कमरे में बैठे हों और स्क्रीन ही एकमात्र light source हो, जो आमतौर पर स्वस्थ वातावरण नहीं है
Dark mode एक accessibility aid के क़रीब है; बेहतर है कि लाइट जला लें या सो जाएँ
बिना रोशनी वाले माहौल में light mode पढ़ने में चुभ सकता है, लेकिन उजले माहौल में dark mode लगभग पढ़ा ही नहीं जाता। तेज़ गर्मी के दिन फ़ोन पर dark mode UI पढ़कर देखिए, brightness पूरी बढ़ाने पर भी साफ़ नहीं दिखता
दरअसल browser में default background color और text color सेट करने की सुविधा पहले से होती है, इसलिए अगर websites सच में ज़रूरी होने पर ही इससे हटें और इन defaults का सम्मान करें, तो extension की ज़रूरत ही न पड़े
यह दुर्भाग्यपूर्ण है कि “मेरी preference का सच में सम्मान करो” जैसी extension की ज़रूरत पड़ती है, लेकिन अगर ज़रूरत हो तो कम-से-कम यह जानना उपयोगी है कि दोनों विकल्पों का समर्थन मौजूद है। पूरी स्थिति काफ़ी बेवकूफ़ी भरी है, लेकिन workaround है
अब सभी operating systems में switchable modes हैं और वे यह browser को बता सकते हैं। Browser operating system द्वारा बताई गई setting के अनुसार adapt कर सकता है और करना भी चाहिए
UI design, Paul Fitts जैसे तर्कसंगत अपवादों को छोड़ दें, तो ज़्यादातर ग़लत ढंग से लागू किए गए mood और trends की एक कड़ी ही है
पहले कहा जाता है contrast ख़राब है, तो लोग contrast कम कर देते हैं; फिर कहा जाता है brightness ख़राब है, तो brightness कम कर देते हैं। फिर समझ आता है कि contrast और brightness शुरू से महत्वपूर्ण क्यों थे, और यह चक्र चलता रहता है
ऐसा लगता था जैसे कार की high beams सीधे सामने से देख रहे हों, और मैंने Dark Reader plugin इस्तेमाल किया, लेकिन वह इस बात जैसा नहीं था कि कोई site ठीक से dark mode support करे
दिन के उजाले में भी यह काफ़ी ज़्यादा आरामदायक है। अच्छा होगा अगर कुछ Android apps की तरह Pure Black mode, dark/light mode से अलग एक option हो
फ़िलहाल मैं Dark Reader में brightness न्यूनतम करके काम चला रहा हूँ, लेकिन यह थोड़ा भद्दा है
यह ब्लॉग खुद डिवाइस सेटिंग का पालन नहीं करता और पाठकों पर Light Mode थोपता है
लेखक ने बीच में अपना रुख बदलकर निष्कर्ष निकाला कि समस्या Dark Mode नहीं बल्कि color contrast है
color: #111;औरbackground-color: #fdfdfd;परिभाषित हैं, और यह 18.56:1 contrast ratio हैविडंबना यह है कि अंत में वह workaround के रूप में invert filter इस्तेमाल करने की बात करता है, लेकिन अगर Dark Mode पसंद करने वाला कोई व्यक्ति लेखक की तेज़ सफेद background/काले text वाली साइट पर Vivaldi का
Invert Modeजैसा कुछ इस्तेमाल करे, तो लेखक जिस Dark contrast की शिकायत कर रहा है वही बन जाता हैकाश उपयोगकर्ताओं पर low contrast न थोपा जाए
हर कोई 100 nits से ज़्यादा पर calibrated screen और चमकदार लेकिन उचित ambient lighting में content नहीं देखता
सुझाया गया gray-on-gray संयोजन, उदाहरण के लिए, पूरी तरह अंधेरे कमरे में brightness 0 पर देखने या सीधी धूप में देखने पर पढ़ना मुश्किल बना सकता है
पूरा SDR color gamut इस्तेमाल करने के लिए ही है; यह HDR नहीं है जिसे उपयोगकर्ताओं को चकाचौंध से बचाने के लिए सीमित करना पड़े
यह सिर्फ Light बनाम Dark की समस्या नहीं है। अच्छा होगा अगर वेबसाइटें सामान्य रूप से मेरी system preferences का सम्मान करें
अगर मेरी operating system theme पीली ईंटों वाली background पर बैंगनी Comic Sans text है, तो browser को भी उसका सम्मान करना चाहिए
अगर मैं text को browser की पूरी चौड़ाई में पढ़ना चाहता हूँ, तो मुझे उसे बीच में 5-inch के संकरे column में देखने के लिए मजबूर नहीं किया जाना चाहिए; browser settings में जादू करने, override CSS लगाने या extension install करने की ज़रूरत नहीं होनी चाहिए
browser को बस कहना चाहिए, “वेब डेवलपर, मजबूरी है। user preference जीतेगी।”
browser ने developers को इतना ज़्यादा control दे दिया है कि वे उपयोगकर्ता की चाहत को अनदेखा कर सकें, और “user agent” शब्द अब बेमानी लगता है। अब यह developer agent के ज़्यादा क़रीब है
मैं भी ऐसा ही करता हूँ, और web browsing बहुत बेहतर हो जाती है
कुछ जगहों पर Dark Mode शानदार है, और कुछ पर बिल्कुल बेतुका। white theme के साथ भी यही बात है
बहुत सारे web developers यह मान लेते हैं कि सबको Dark Mode पसंद है, इसलिए उसे default बना देते हैं, और फिर यह कहकर सही ठहराते हैं कि Dark/Light Mode toggle button मौजूद है
यह देखकर हैरानी होती है कि नई बनी websites भी user preference detect नहीं करतीं और बस fixed रहती हैं
अगर आप developer हैं, तो CSS की
color-schemeproperty से यह बता सकते हैं कि कोई element किस color configuration में आराम से render हो सकता है:root { color-scheme: light dark; }element { light-dark(light-color-code, dark-color-code); }एक macOS user के रूप में, menu bar या IDE जैसी कुछ जगहों पर Dark Mode अच्छा लगता है, लेकिन पढ़ने, लिखने और browsing के लिए मुझे Light पसंद है, इसलिए मेरी preferences मिली-जुली हैं
System Preferences में theme को LIGHT पर सेट करें, फिर
defaults write -g NSRequiresAquaSystemAppearance -bool Yesचलाएँ, और logout के बाद System Preferences में theme को DARK पर सेट करेंdefault theme पर लौटने के लिए
defaults write -g NSRequiresAquaSystemAppearance -bool Noचलाएँमज़ेदार बात यह है कि ब्लॉग का “पढ़ने में आसान text” वाला उदाहरण मुझे low contrast की वजह से सचमुच पढ़ने में कठिन लगता है
जानना चाहूँगा कि वह किस तरह की आँखों की स्थिति या monitor इस्तेमाल कर रहा है
यह असहनीय है, बदसूरत है, और पढ़ने में कठिन है। काश सब लोग यह बंद करें
अगर कोई web API है जिससे पता चल सकता है कि user Dark Mode में है, तो वही इस्तेमाल करें
@media (prefers-color-scheme: dark) { CSS Rules here... }Dark Mode एक गलती था
शुरुआती LCD काफ़ी मंद थे, इसलिए सबने इसकी भरपाई के लिए सफेदी बहुत बढ़ा दी, और अब जब LCD उस स्तर तक पहुँच गए हैं, तो यह काफ़ी लोगों की आँखें जला देने जैसा हो गया है
इसी वजह से अब धीरे-धीरे दोनों modes support करने पड़ रहे हैं, और Apple के हास्यास्पद रूप से बदसूरत Dark Mode icons दिखाते हैं कि इसे ठीक से करना कितना मुश्किल है
आदर्श रूप से, कंप्यूटर interfaces के default colors को फिर से gray पर ले जाना चाहिए, जैसे उस दौर में था जब चमकीले CRT standard थे
इसका एक फ़ायदा यह भी है कि UI elements को depth cues दिए जा सकते हैं, और वह भी वापस आना चाहिए
असली मुद्दा यह है कि चीज़ें configurable होनी चाहिए ताकि user अपनी preference सेट कर सके
व्यक्तिगत रूप से, मुझे Light Mode चुभता है, आँखों में दर्द करता है और थका देता है। लोगों की पसंद अलग-अलग होती है
Light Mode आम तौर पर पूरी तरह सफेद नहीं होता, और Dark Mode ग्रे शेड्स का ही होता है