2012-01-17 15 views
7

जब मैं W3C के सत्यापनकर्ता के माध्यम से अपने सीएसएस चलाने के लिए, किसी भी समय मैं box-shadow संपत्ति का उपयोग करें, मैं एक त्रुटि इस तरह मिलती है:CSS3 बॉक्स-छाया संपत्ति मान्य नहीं है?

0 एक बॉक्स-छाया मान नहीं है: 0 0 10px # 000

यह, जो कुछ भी पहले मान है पर रोकने के लिए के बाद से मानों का क्रम बदल रहा है मैच के लिए त्रुटि बदल जाएगा प्रकट होता है: # 000 0 0 10px

:

# 000 एक बॉक्स-छाया मूल्य नहीं है

मैं CSS3 पर प्रोफ़ाइल सेट के साथ मान्य हूं, इसलिए मुझे सीएसएस 2 से डिफ़ॉल्ट प्रोफ़ाइल सेटिंग बदलने की भूल नहीं है (जहां box-shadow संपत्ति मौजूद नहीं है)।

ऐसा क्यों नहीं लगता कि मेरे द्वारा उपयोग किए जा रहे मूल्यों में से कोई भी सही है? छाया फ़ायरफ़ॉक्स और किसी भी अन्य ब्राउज़र में पूरी तरह ठीक हो जाएगी जो गैर-प्रीफ़िक्स्ड box-shadow संपत्ति का समर्थन करती है।

उत्तर

11

यह a known validator bug है। जाहिर है वे भूल गए कि यूनिटलेस मानों की अनुमति है (विशेष रूप से यूनिटलेस शून्य मान)। आपके सीएसएस में कुछ भी गलत नहीं है; आपके द्वारा उपयोग किए जा रहे मान सही हैं।

आप picky रहे हैं और आप अपने अन्यथा-है-गया सफल सत्यापन खराब बग के साथ नहीं रख सकते हैं, तो आप बस अपने शून्य मान इकाइयों जोड़ सकते हैं:

box-shadow: 0px 0px 10px #000; 

लेकिन जब भी मैं इस तरह की स्थितियों में भागो, मैं आमतौर पर परेशान नहीं करता, यह जानकर कि यह एक हानिकारक सत्यापनकर्ता बग है और मेरे सीएसएस के साथ कुछ गलत नहीं है।

ध्यान दें कि इस अद्यतन के रूप में बग August 30, 2012 के बाद से तय किया गया है।

+0

वाह, आप सही हैं! सभी मूल्यों पर इकाइयों के साथ, यह मान्य करता है। यह वास्तव में एक सुंदर चमकदार त्रुटि है क्योंकि इसका मतलब है कि आरजीबीए रंगों का उपयोग करने वाली छाया कभी मान्य नहीं होगी, क्योंकि उनके पास इकाइयां नहीं हैं। – daGUY

+0

@daGUY: 'rgba()' और 'hsla()' रंग वैधकर्ता के साथ पार्स त्रुटियों को ट्रिगर करते हैं, लेकिन ऐसा लगता है कि यूनिटलेस मानों के साथ 'rgb() 'और' hsl() ' रंग ठीक काम करते हैं। [यह बग रिपोर्ट] देखें (https://www.w3.org/Bugs/Public/show_bug.cgi?id=11880)। – BoltClock

+0

मजेदार पर्याप्त, '0px 2px 2px # ccc' जैसी इकाइयों का उपयोग करते समय सत्यापनकर्ता सत्यापन रिपोर्ट में संलग्न के रूप में' 0 2px 2px # ccc' को कथन को सरल बनाता है :) –

3

इसे 0px 0px 10px #000 पर बदलें और यह मान्य होगा। यह शायद वैधकर्ता के बीटा संस्करण की वजह से है।

2

वैधकर्ता के पास बहुत सारी बग हैं। बीटा चरण पर इसकी नई और इसकी।

संबंधित मुद्दे