सवाल सीएसएस में 0 मान निर्दिष्ट करते समय, क्या मुझे स्पष्ट रूप से इकाइयों को चिह्नित करना चाहिए या छोड़ देना चाहिए?


यह एक 'दर्शन' तर्क का अधिक है, लेकिन मैं जानना चाहता हूं कि यहां अनुशंसित अभ्यास क्या है। अगर मैं 'आधिकारिक' उत्तर देता हूं तो मैं इसे विकी के रूप में स्थापित नहीं कर रहा हूं।

जाहिर है, 0px और 0em या जो भी हो, के बीच कोई अंतर नहीं है, इसलिए कोई भी 0 निर्दिष्ट कर सकता है और इकाइयां अनावश्यक हैं (देखें 0 और 0em के बीच सीएसएस अंतर)। उस प्रश्न का उत्तर देने वाले कुछ लोगों ने तर्क दिया कि किसी को हमेशा इकाइयों को छोड़ देना चाहिए।

हालांकि, मुझे ऐसा लगता है कि यूनिट को छोड़ना अधिक त्रुटि-प्रवण है, क्योंकि बाद में परिवर्तन इकाई को गलती से छोड़ सकता है। यह दस्तावेज़ में कहीं और गैर-शून्य तत्वों के साथ भी कम संगत है।


36
2017-10-27 22:08


मूल


मैं आम तौर पर यहां और वहां कुछ बाइट्स को बचाने के लिए इकाइयों को छोड़ देता हूं। - Vic


जवाब:


मैं तर्क देता हूं कि आपको इकाइयों को भी छोड़ देना चाहिए।

एक प्रोग्रामर के परिप्रेक्ष्य से, 0 == null == none == false, कहा पे 0px == 0px केवल।

जिसका अर्थ है कि यदि आप की सीमा चौड़ाई निर्दिष्ट करते हैं 0 तो वहां कोई सीमा नहीं होगी, लेकिन यदि आप एक निर्दिष्ट करते हैं 0px सीमा, तो 0 पीएक्स की एक सीमा बनाई जाएगी (वास्तविकता में, इसके पीछे यह विचार है 0px वही परिणाम देता है जैसे 0)।

आगे के अंक

  • यूनिट-कम 0 इसे पढ़ने में आसान बनाता है क्योंकि यह सामान्य इकाई के मूल्यों से आसानी से भिन्न है।
  • इकाइयों को हटाने के लिए यह समझ में आता है क्योंकि उनके पास कोई बिंदु नहीं है (0 आकार, रंग, आदि का मतलब हो सकता है)।

निष्कर्ष: इकाइयों को 0 में छोड़ दें। उन्हें जरूरी और भ्रमित करने की आवश्यकता नहीं है।


57
2017-10-27 22:11



जबकि मैं एक आधिकारिक दिशानिर्देश के लिए एक तरफ या दूसरी उम्मीद कर रहा था, सीएसएस का नमूना इस वैकल्पिक को छोड़ने लगता है। यह उत्तर सबसे विस्तृत लगता है और समझ में आता है, हालांकि मुझे यकीन नहीं है कि मैं पूरी तरह से सहमत हूं। - Uri
+1 मैंने अक्सर सोचा है, और आपका जवाब सही समझ में आता है; "यदि आप 0px सीमा निर्दिष्ट करते हैं, तो 0 पीएक्स की सीमा बनाई जाएगी"यह मेरे लिए चुरा लिया। - Dan Lugg
यह भी ध्यान दिया जा सकता है कि जब आप टाइप करते हैं तो कुछ आईडीई आपको चेतावनी देंगे 0px और सुझाव देते हैं 0 सीएसएस मूल्यों के लिए। निश्चित रूप से PHPStorm एक है। वह व्यवहार अकेले इस उत्तर का समर्थन करता है। +1 - AlienWebguy


सीएसएस विनिर्देशों का कहना है कि 0<unit> लिखा जा सकता है 0। और मैंने कई बार पढ़ा है कि यूनिट को छोड़ने का सुझाव दिया गया है, मुझे याद नहीं है।

तो उन्हें छोड़ दो।

देख http://www.w3.org/TR/CSS2/syndata.html#length-units


13
2017-10-27 22:21



मैं 'कर' देखता हूं, लेकिन मुझे 'चाहिए' भाग नहीं दिखाई देता: "लंबाई मान का स्वरूप (इस विनिर्देश में <लंबाई> द्वारा दर्शाया गया) एक <संख्या> (दशमलव बिंदु के साथ या बिना) है इसके बाद एक इकाई पहचानकर्ता (उदाहरण के लिए, पीएक्स, एम, आदि)। शून्य लंबाई के बाद, यूनिट पहचानकर्ता वैकल्पिक है। " - Uri
पोस्ट किया गया लिंक पहला प्रश्न है जो मैंने आपके प्रश्न के बारे में पाया है, लेकिन मैंने कई बार पढ़ा है कि यूनिट को छोड़ने का सुझाव दिया गया है, मुझे याद नहीं है। - ʞᴉɯ


मैं कहता हूं कि इकाई को छोड़ दें, इससे आपको सीएसएस को संपीड़ित करने और प्रदर्शन में वृद्धि करने में मदद मिलेगी। यह ज्यादा नहीं है, लेकिन हर छोटी मदद करता है।


2
2017-10-27 22:12





मैं भी अपने शून्य से इकाइयों को रखना पसंद करता हूं क्योंकि ...

  1. आईडीईएस का मानना ​​है कि वे मूल्यों को पसंद करते हैं ताकि वे उन्हें ठीक से बढ़ा सकें, जैसा कि इस्तवन ने उल्लेख किया था।
  2. अगर मैं एक और मूल्य डालता हूं तो मुझे इकाई को बाद में टाइप करने की ज़रूरत नहीं है। और यदि इकाई शून्य है या इसे वापस नहीं रखती है तो उसे इकाई को हटाने की कोशिश करने और याद रखने की आवश्यकता नहीं है।
  3. एक पोस्टर ने कहा कि नग्न शून्य था अधिक पठनीय। मुझे लगता है कि यह है नहीं। जब एक इकाई होती है, तो आपके पास संदर्भ होता है, और यह इसे और अधिक पठनीय बनाता है। उदाहरण के लिए, यदि मैं एक प्रतिशत संकेत में आया हूं, तो मुझे पता है कि मैं इसे "पीएक्स" इकाई की तुलना में विभिन्न तरीकों से उपयोग करता हूं, इसलिए मैं तुरंत कुछ चीजों को जानता हूं।
  4. एक और लड़का, "लाल", था इस कहने के लिए, जो अच्छी जानकारी की तरह दिखता है। यहां एक स्निपेट है ...

    हालांकि, अगर आप कैस्केड में पूर्व मान बदलना चाहते हैं तो आप इसे नोटिस करेंगे। एक '0em' कहता है, '0em' को पूर्व मान बदलें, लेकिन शून्य केवल यह कह सकता है, 'इस नियम को नजरअंदाज करें' और पूर्व नियम को प्रभावी रूप से छोड़ दें। यह आपके नग्न '0' के साथ जो कुछ भी था, वह बिल्कुल नहीं हो सकता है। मूल लेख लिंक


2
2018-04-16 17:21



मुझे लगता है कि बिंदु 4 में उद्धृत पाठ गलत है। मेरे अनुभव में यदि आप कुछ "नग्न 0" पर सेट करते हैं तो यह वास्तव में शून्य पर सेट हो जाएगा। यह पिछले नियम का उपयोग नहीं करेगा। शायद यह फोंट का मामला नहीं है, लेकिन मुझे लगता है कि फ़ॉन्ट आकार को शून्य पर सेट करना कभी जरूरी नहीं है। - OMA
इसके अलावा, किसी भी टेक्स्ट फ़ॉन्ट आकार को शून्य पर सेट करना भी खोज इंजन द्वारा "दंडित" किया जा सकता है, क्योंकि यह केवल खोज इंजन के लिए कीवर्ड सवार सामग्री जोड़ने का एक तरीका है, वास्तविक उपयोगकर्ताओं के लिए नहीं। - OMA


वर्तमान ब्राउज़र डेवलपर टूल में आप आसानी से ऊपर / नीचे कर्सर कुंजी के साथ रहने वाले मानों को ट्विक कर सकते हैं, लेकिन यदि आप निर्दिष्ट करते हैं 0एक इकाई के बिना, यह काम नहीं करेगा, क्योंकि ब्राउज़र नहीं जानता कि आप कौन सी इकाई पसंद करते हैं, और सेटिंग 1, 2... एक इकाई के बिना कोई मतलब नहीं है।

यही कारण है कि मैं हमेशा शून्य मानों पर यूनिट को हमेशा निर्दिष्ट करता हूं। कोई भी सीएसएस मिनीफायर इसे बदल देगा 0 खनन पर इसलिए आपको इसकी परवाह करने की भी आवश्यकता नहीं है।


2
2018-04-13 16:37



यह गलत है, मैं कह सकता हूं कि क्रोम और फ़ायरफ़ॉक्स के लिए यदि कोई इकाई नहीं है तो आप तीर कुंजियों के साथ आगे बढ़ने के बाद "px" जोड़ देंगे - Brian Leishman
हाँ, तब से तय किया जाना प्रतीत होता है। - István Ujj-Mészáros


मैं हमेशा पढ़ता हूं क्योंकि इसे पढ़ने में आसान लगता है, शून्य पॉप आउट हो जाता है और इसके आस-पास के यूनिट मानों से आसानी से अलग हो सकता है।


1
2017-10-27 22:13