पृष्ठभूमि-रंग: कोई भी मान्य CSS नहीं है?


431

क्या कोई मुझे बता सकता है कि निम्नलिखित सीएसएस वैध है?

.class {
    background-color:none;
}

10
सत्यापनकर्ता अक्सर सवाल इस तरह की जवाब कर सकते हैं।
९वीड

10
आप भ्रमित हो सकते हैं background:none;, जो वैध है, और जो पृष्ठभूमि के रंग को पारदर्शी बनाता है।
श्री लिस्टर

जवाबों:


551

आप शायद चाहते हैं transparentकि noneएक वैध background-colorमूल्य नहीं है ।

सीएसएस 2.1 कल्पना राज्यों के लिए निम्नलिखित background-colorसंपत्ति:

Value: <color> | transparent | inherit

<color>एक कीवर्ड या एक रंग का एक संख्यात्मक प्रतिनिधित्व हो सकता है। मान्य colorकीवर्ड हैं:

एक्वा, काला, नीला, फुकिया, ग्रे, हरा, चूना, मैरून, नेवी, जैतून, नारंगी, बैंगनी, लाल, चांदी, चैती, सफेद, और पीला

transparentऔर inheritअपने आप में मान्य कीवर्ड हैं, लेकिन noneऐसा नहीं है।


25
हाँ। चूंकि प्रारंभिक मूल्य है transparent, यही वह है जो आप उपयोग करते हैं यदि आप पृष्ठभूमि के रंग को "बंद" करना चाहते हैं।
श्री लिस्टर

1
इनमें से कोई भी पिछले मान पर रीसेट नहीं होगा (अर्थात यदि किसी अन्य css नियम द्वारा सेट किया गया है :(
pstanton

2
@ अपने मामले में, आपको पृष्ठभूमि-रंग देने की आवश्यकता है: पारदर्शी!
झुंड

यह मुझे पहली बार कोडिंग के साथ जाने पर फ़ॉन्ट-रंग का उपयोग करने की कोशिश की याद दिलाता है। बेशक color, यह नहीं है font-color। जब भी कभी भी अन्य फ़ॉन्ट संपत्ति इसके fontसामने होती है, तो बहुत समझ में आता है ...
21

@herr लेकिन अभी भी के रूप में pstanton ने कहा, पृष्ठभूमि रंग पारदर्शी स्थापित करने से पिछली सीएसएस गुणों को ओवरराइड किया जाएगा! क्या इस पृष्ठभूमि की रंग संपत्ति को हटाने का कोई तरीका है जैसे कि यह पिछले संपत्ति से सीएसएस संपत्ति लेता है?
SE_User

159

नहीं, transparentइसके बजाय उपयोग करें none। इस उदाहरण में यहां काम कर रहे उदाहरण देखें यदि आप इसे बदलेंगे transparentतो noneयह काम नहीं करेगा

जैसे का उपयोग करें .class { background-color:transparent; }


जहां .class वह है जो आप अपने पारदर्शी वर्ग का नाम देंगे।


मेरे उदाहरण में यह पूरी तरह से विपरीत है। यदि आप किसी को पारदर्शी नहीं बदलते हैं तो यह काम नहीं करेगा। मुझे वास्तव में कोई भी उपयोग करने की आवश्यकता नहीं है: jsfiddle.net/BkAad
Hrvoje Golcic

आपके उदाहरण में, बॉडी में परिवर्तन *: नहीं (.exception) {बैकग्राउंड-कलर: ट्रांसपेरेंट} आपको इसे हटाना होगा क्योंकि यह महत्वपूर्ण है कि अंदर के अन्य सभी लोगों के पास वह प्रॉपर्टी हो। और अंदर के ली (ओं) पर बैकग्राउंड-कलर प्रॉपर्टी का उपयोग केवल बैकग्राउंड कलर के लिए बैकग्राउंड वाले की तुलना में करें।
यवसलेब्यू जुले

67

जवाब न है।

ग़लत

.class {
    background-color: none; /* do not do this */
}

सही बात

.class {
    background-color: transparent;
}

background-color: transparentउसी चीज को पूरा करता है जो आप करना चाहते थे background-color: none


7
.class {
    background-color:none;
}

यह एक वैध संपत्ति नहीं है। W3C सत्यापनकर्ता निम्न त्रुटि प्रदर्शित करेगा:

मान त्रुटि: पृष्ठभूमि-रंग कोई भी पृष्ठभूमि-रंग मान नहीं है: कोई भी नहीं

transparentसीएसएस के विनिर्देशन के विकास के दौरान 0या noneमूल्यों के बजाय बेहतर शब्द के रूप में चुना जा सकता है ।


2
और यह वही दोहराता है जो जेम्स ने ढाई साल पहले कहा था, लेकिन गैर-कट और पेस्ट करने योग्य प्रारूप में। ; ^)
रफिन

6

CSS स्तर 3 unsetसंपत्ति मूल्य निर्दिष्ट करता है। से MDN :

अनसेट सीएसएस कीवर्ड प्रारंभिक और विरासत कीवर्ड का संयोजन है। इन दो अन्य सीएसएस-विस्तृत कीवर्ड की तरह, इसे सीएसएस शॉर्टहैंड सहित सभी सीएसएस संपत्ति पर लागू किया जा सकता है। यदि यह अपने माता-पिता से विरासत में मिला है या नहीं तो इसके प्रारंभिक मूल्य के लिए यह कीवर्ड संपत्ति को उसके उत्तराधिकारी मूल्य पर रीसेट करता है। दूसरे शब्दों में, यह पहले मामले में इनहेरिट कीवर्ड की तरह व्यवहार करता है और दूसरे मामले में शुरुआती कीवर्ड की तरह।

दुर्भाग्य से यह मान वर्तमान में IE, सफारी और ओपेरा सहित सभी ब्राउज़रों में समर्थित नहीं है। मैं सुझाव देता हूं कि transparentसमय का सदुपयोग करें।


3

इसे लिखें:

.class {
background-color:transparent;
}

2
कृपया अपना कोड बताएं और यह समस्या को हल करने में कैसे मदद करता है! - समीक्षा से
लुका कीबेल

ठीक है। पृष्ठभूमि-रंग एक सीएसएस विशेषता है और हर सीएसएस विशेषता की तरह कुछ वैध और गैर-वैध मूल्य हो सकते हैं। पृष्ठभूमि-रंग के लिए वैध मान नीचे दिए गए प्रारूप में से एक हो सकता है: # 5f9 या # 56f293 या पारदर्शी। पारदर्शी का मतलब है कि आप अशक्त या कोई भी पृष्ठभूमि रंग नहीं चाहते हैं।
अबॉल्फ़ज़ल मिआडियन

1
वाह - प्रश्न (और उत्तर) के 6 साल बाद आप एक डुप्लिकेट के साथ जवाब देते हैं?
NarfkX

पूछने का समय महत्वपूर्ण नहीं है क्योंकि हर दिन कुछ लोग उत्तर के लिए इस पृष्ठ या किसी अन्य पुराने पृष्ठ पर जाते हैं। मुझे लगता है कि मेरा उत्तर वाक्यविन्यास अधिक स्पष्ट है!
अबोफैजल मिआडियन

1

इसलिए, मैं उस परिदृश्य की व्याख्या करना चाहूंगा जहां मुझे इस समाधान का उपयोग करना था। मूल रूप से, मैं पृष्ठभूमि-रंग विशेषता को किसी अन्य सीएसएस द्वारा निर्धारित करना चाहता था। अपेक्षित अंतिम परिणाम यह देखने के लिए था कि मूल सीएसएस ने पृष्ठभूमि-रंग विशेषता को कभी लागू नहीं किया था। सेटिंग background-color:transparent;को प्रभावी बनाया।


1
मुझे वह पृष्ठभूमि मिल रही है: पारदर्शी मेरे लिए काम नहीं कर रहा है एक पृष्ठभूमि रंग को दूसरे सीएसएस द्वारा सेट किया जा रहा है। अगर मैं पृष्ठभूमि चुनता हूं: लाल; उदाहरण के लिए - यह काम करेगा। लेकिन पृष्ठभूमि: पारदर्शी; अन्य सीएसएस पृष्ठभूमि रंग रहने की अनुमति दे रहा है। किसी भी विचार कैसे रोकें?
सहायक योएल
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.