दिलचस्प पोस्ट
टीएफएस 2013 निर्माण .NET 4.6 / सी # 6.0 इकाई फ़्रेमवर्क / SQL2008 – संस्थाओं के लिए स्वचालित रूप से अद्यतन LastModified फ़ील्ड कैसे करें? एचटीएमएल – मैं ऑलिप्सिस सक्रिय होने पर केवल टूलटिप कैसे दिखा सकता हूं PHP – एक सरणी में एक सरणी में मर्ज करना (डुप्लिकेट निकालें) एमएस एक्सेस क्वेरी: एक क्वेरी के माध्यम से पंक्तियाँ जोड़ना सीतनिद्रा में होना, पहचानकर्ता / प्राथमिक कुंजी को बदलना जावास्क्रिप्ट कोड कैसे छिपाएंगे संपत्ति सेट क्यों StackOverflow अपवाद फेंक है? डबल हाइफ़न के साथ शुरू होने वाली फ़ाइलों को कैसे निकालना है? एक पैरामीटर में डॉट के साथ मार्गों से मिलान करने में असफल क्यों होते हैं? Javac: त्रुटियों के रूप में चेतावनियां का इलाज करें मैं jquery के साथ इनपुट फ़ील्ड से विशेष वर्ण कैसे रोक या प्रतिबंधित कर सकता हूं? `स्ट्रिंग 'बहुत अधिक प्रकार तर्कों पर लागू होता है ASP.Net MVC में नियंत्रक और एक्शन विधि का नाम प्राप्त करना सी # में रीडोनली के रूप में क्षेत्र को चिह्नित करने के क्या लाभ हैं?

एससीएसएस ने नेस्टेड चयनकर्ता का विस्तार किया है और नीडिंत नियमों को ओवरराइड किया है

ठीक है तो मेरे पास नेस्टेड चयनकर्ता के साथ प्लेसहोल्डर है:

%block { .title { font-size:12px; } } 

मैं इसका विस्तार करना चाहता हूं और। .title वर्ग में जोड़ें:

 .superblock { @extend %block; .title { font-weight:bold; } } 

जवाब मैं चाहता हूँ यह है:

 .superblock .title { font-size: 12px; font-weight: bold; } 

हालांकि, मुझे जो उत्तर मिलता है वह यह है:

 .superblock .title { font-size: 12px; } .superblock .title { font-weight: bold; } 

क्या मैं कुछ गलत कर रहा हूं या क्या यह काम करता है? स्पष्ट करने के लिए मैं इसे मर्ज करना चाहता हूं। अगर मैं कुछ सीधे अंदर .superblock.superblock और दूसरे की तरह जोड़ .superblock2 जो कि% ब्लॉक का विस्तार करता है, वे किसी भी समस्या के बिना विलय कर देते हैं।

Solutions Collecting From Web of "एससीएसएस ने नेस्टेड चयनकर्ता का विस्तार किया है और नीडिंत नियमों को ओवरराइड किया है"

डुप्लिकेट चयनकर्ताओं के "मर्जिंग" के लिए Sass की कोई कार्यक्षमता नहीं है सीएसएस के संकलित होने के बाद आपको यह करने के लिए एक अन्य उपयोगिता मिलनी होगी।

@extend डायरेक्टिव केवल @extend स्थान पर कक्षाओं का उपयोग करने का एक तरीका नहीं है (कम शैली मिक्सिन कॉल की तरह)। क्यों @extend यह काम करता है जिस तरह से यह स्पष्ट हो जाता है जब आप कक्षाओं को बढ़ाने के बजाय सामान्य कक्षाएं बढ़ा रहे हैं:

 .block { font-size:12px; } .foo { @extend .block; font-weight: bold; } 

आउटपुट:

 .block, .foo { font-size: 12px; } .foo { font-weight: bold; } 

विस्तार वर्ग का उपयोग केवल मूल वर्ग के नाम के उत्सर्जन को दबा देता है।

अब जब आपने देखा है कि @extend इसलिए काम करता है, तो क्या आप अभी भी चाहते हैं कि @extend प्रदान करता है? यदि जवाब नहीं है, तो आपको एक मिक्सिन का उपयोग करना होगा:

 @mixin block { // styles .title { font-size: 12px; @content; } } .superblock { @include block { font-weight: bold; } } 

आउटपुट:

 .superblock .title { font-size: 12px; font-weight: bold; } 

यह बहुत ज्यादा है SASS विस्तारित घोषणाओं को अलग-अलग उत्पादन करता है

और इसमें चयनकर्ता द्वारा समूह की घोषणाओं की कोई कार्यक्षमता नहीं है, यह वह स्मार्ट नहीं है

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

कम वह कर सकता है हालांकि आप लिखेंगे:

 .superblock { .title { .block .title; } } 

सुनिश्चित नहीं है कि यह @ एक्सटेंशन के साथ भी काम करता है

आप एक उपकरण का उपयोग कर सकते हैं, मैं इसे सीएसएस को साफ करने के लिए इस्तेमाल किया है https://github.com/addyosmani/grunt-uncss

"UnCSS के साथ आपकी परियोजनाओं से अप्रयुक्त सीएसएस को हटाने के लिए एक कठोर कार्य।"