2013-02-19 48 views
5

मेरी वेब प्रोजेक्ट में मैंने रखरखाव के कारणों के लिए अलग-अलग कम फ़ाइलों में अपने सीएसएस को विभाजित कर दिया है। मेरे पास config.less नामक एक फ़ाइल है जो एक मास्टर फ़ाइल के रूप में कार्य करती है जो @import निर्देशों का उपयोग करके अन्य कम फ़ाइलों को आयात करती है।कम @ आयात और वेब अनिवार्यता 2012

इस सेटअप के साथ समस्या यह प्रतीत होती है कि मुझे बहुत कम "Undeclared चर" & मेरी कम फ़ाइलों को संपादित करते समय "Undeclared mixin" मिलता है, उदाहरण के लिए @textColor नामक एक संपत्ति चर जोड़ने के दौरान, यह है Variables.less नामक एक और कम फ़ाइल में घोषित किया गया। बाहरी कम फ़ाइलों में परिभाषित चर और मिश्रणों के बारे में जागरूक वेब आवश्यक बनाने का कोई तरीका है?

एक और बात है कि वेब अनिवार्य अप ट्रिपिंग होने लगता है जब मैं कम नेस्ट मीडिया क्वेरी सुविधा का उपयोग कर रहा हूँ:

.some-selector { 
    background: #000; 
    @media only screen and (max-width: 800px) { 
     background: #fff; 
    } 
} 

नेस्टेड @media घोषणा और एक लाल रेखांकन हो जाता है, हॉवर पर यह कहते हैं स्टाइल नियम में "अप्रत्याशित '@' ब्लॉक"। नेस्टेड पृष्ठभूमि प्रॉपर्टी को होवर करना एक "मान्यकरण: 'रंग' एक वैध HTML टैग नहीं है।

उत्तर

2

मैं वेब अनिवार्यता के साथ @media समस्या के बारे में कोई जवाब नहीं दे सकता, लेकिन मैं चर और मिश्रित मुद्दे पर सलाह दे सकता हूं।

मूल रूप से, अपने config.less फ़ाइल बदल @import-once होने की variables.less और किसी भी अन्य mixin फ़ाइलों के लिए है, तो भी (किसी भी mixin उपयोग की गई फ़ाइलों के लिए भी ऐसा ही) यह से चर का उपयोग करता है प्रत्येक फ़ाइल में @import-once 'variables.less जोड़ें।

यदि आप इस पर काम कर रहे हैं (जैसे आपके base.less), लेकिन जब यह करता है तो यह फ़ाइल आयात करता है सभी फाइलों को config.less द्वारा संकलित किया गया है, यह केवल variables.less आयात करेगा, और प्रत्येक फ़ाइल के लिए फिर से नहीं होगा जो variables.less का भी संदर्भ देता है।

+1

किसी कारण से आयात-एक बार मेरे लिए काम नहीं कर रहा है। मेरे पास एक मुख्य शैली है। बिना फ़ाइल जिसमें केवल आयात शामिल है। वहां से मैं आयात करता हूं- एक बार mixin.less फ़ाइल जो एक .clearix कक्षा घोषित करता है और कक्षा को शामिल किया जाना चाहिए ... अच्छा। अब एक और फ़ाइल में मैं आयात करता हूं- एक बार mixin.less फ़ाइल इंटेलिजेंस प्राप्त करने के बाद, और उसके बाद उस फ़ाइल को मुख्य शैली में आयात करने के बाद आयात करें। मुझे लगता है कि इसमें केवल एक बार स्क्वायरफिक्स कक्षा शामिल होनी चाहिए, लेकिन दुर्भाग्य से इसमें दो बार शामिल है? कोई विचार? – MattyP

+1

धन्यवाद @ स्कॉट्स! यह ठीक वही है जिसकी मुझे तलाश थी। कम दस्तावेज को और अधिक अच्छी तरह से पढ़ने पर परेशान होना चाहिए :) दस्तावेज़ों के मुताबिक, '@ आयात-एक बार' v। 1.4.0 से शुरू होने वाले 'आयात' का डिफ़ॉल्ट व्यवहार होगा। – Unless

+0

@MattyP: वह शैली.लेस मेरी 'config.less' फ़ाइल के बराबर की तरह लगता है। उस स्थिति में हमारे पास काफी समान सेटअप हैं। तो संकलित 'style.less फ़ाइल' में '.clearfix' कक्षा दो बार है? – Unless