2012-05-24 9 views
19

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

अब, मुझे पता है कि एक उद्देश्य प्लगइन है जिसे विशेष रूप से उस उद्देश्य के लिए बनाया गया है। हालांकि, यहां डेडवेट के साथ मेरी समस्या है: सबसे पहले, यह जावास्क्रिप्ट में उपयोग किए गए चयनकर्ताओं को पूरी तरह से अनदेखा करता है। इसके बाद, यह केवल उन पृष्ठों को स्कैन करता है जिन्हें आप स्कैन करने के लिए कॉन्फ़िगर करते हैं जिसका अर्थ है कि उन पृष्ठों पर उपयोग की जाने वाली किसी चीज़ को हटाने का जोखिम है जिसे आपने किसी कारण से स्कैन नहीं किया था। अंत में, यह केवल संकलित सीएसएस में अप्रयुक्त चयनकर्ताओं को पाता है (हम कम उपयोग करते हैं) - वास्तविक कोड के खिलाफ इन्हें मिलान करना थोड़ा सा शामिल है।

मैंने http://unused-css.com/ भी कोशिश की है - वे बहुत अच्छे हैं, लेकिन स्थानीयहोस्ट तक नहीं पहुंच सकते हैं और फिर, केवल संकलित सीएसएस स्कैन कर सकते हैं।

मुझे सच में लगता है कि ऐसा करने का एक बेहतर तरीका होना चाहिए। दरअसल, कुछ समय पहले मैंने पूरी परियोजना निर्देशिका में प्रत्येक चयनकर्ता को grepping करके एक विशेष सीएसएस फ़ाइल को अनुकूलित करने का निर्णय लिया था (emacs + rinari मोड इसे सुपर-आसान और सुपर-फास्ट बनाता है), और हर बार जब मुझे कोई HTML या css नहीं दिखाई देता परिणामों में मैंने शैली को हटा दिया। शून्य समस्याएं, एक आकर्षण की तरह काम किया। जाहिर है, मैं पूरी साइट के लिए ऐसा नहीं कर रहा हूं। हालांकि, मुझे सच में विश्वास नहीं है कि यह स्वचालित नहीं हो सका। अब, इससे पहले कि मैं अपने अजगर को आग लगा दूं और इसे कोड कर सकूं, क्या कोई वास्तव में मुझे बता सकता है कि क्या मैं पहिया को फिर से बदल रहा हूं?

+1

क्या आपने कभी इसे कोड किया था? मैं कुछ इसी तरह की तलाश में हूं। – Barney

+0

यह सुनिश्चित नहीं है कि मुझे कुछ याद आ रहा है, लेकिन इससे कोई फर्क नहीं पड़ता कि यह संकलित सीएसएस का विश्लेषण करता है, एक अप्रयुक्त चयनकर्ता एक अप्रयुक्त चयनकर्ता है, चाहे वह कम या सादा सीएसएस हो। –

+0

यह थोड़ी देर हो गया है ... नौकरियों को बदलना समाप्त हो गया, एक अलग मंच पर चले गए और कई कारणों से कभी भी इस समस्या से निपटना नहीं पड़ा। इस प्रकार कभी भी स्क्रिप्ट लिखने में कामयाब नहीं रहा :(क्षमा करें दोस्तों –

उत्तर

12

ओपेरा सॉफ्टवेयर से uCSS library देखें।

यह आपको अप्रयुक्त सीएसएस, साथ ही डुप्लिकेट सीएसएस खोजने में मदद करता है। साथ ही, आप इस बारे में एक सिंहावलोकन प्राप्त कर सकते हैं कि आपके मार्कअप में प्रत्येक नियम का कितनी बार उपयोग किया गया है। कॉन्फ़िगरेशन फ़ाइल सेट अप करके कई विकल्प उपलब्ध हैं।

अद्यतन:

एक और बढ़िया विकल्प: csscss

रूबी में लिखा गया और एसएएसएस का समर्थन करता है, कम।

अद्यतन:

एक और बढ़िया विकल्प: uncss

यह कई फाइलों में काम करता है और जावास्क्रिप्ट इंजेक्शन सीएसएस का समर्थन करता है।

+0

+1 यह एक अच्छा टूल है और इस समस्या का सबसे अच्छा समाधान है जिसे मैंने अभी तक देखा है। – steveax

+0

बिल्कुल वही नहीं जो मैं खोज रहा था, लेकिन वास्तव में मैंने जो कुछ देखा है, उसका सबसे अच्छा समाधान –

+0

csscss एक अच्छा टूल है लेकिन afak केवल अनावश्यक सीएसएस पाता है, अप्रयुक्त सीएसएस नहीं – Kyle

2

Dust Me Selecters और/या CSS Usage फ़ायरफ़ॉक्स एक्सटेंशन आपको अप्रयुक्त सीएसएस को कम करने में मदद कर सकता है।

क्रोम के डेवलपर टूल में आप अप्रयुक्त सीएसएस नियमों को खोजने के लिए वेब पेज प्रदर्शन टूल का उपयोग कर सकते हैं।

+2

यह अच्छा है लेकिन सही नहीं है: दोनों अभी भी संकलित सीएसएस के साथ काम करने में सक्षम होंगे, जबकि मैं एक उपकरण पसंद करूंगा जो कम फाइलों के माध्यम से जा सके और नौकरी –

+0

दिलचस्प हो।मुझे ऐसा कुछ भी पता नहीं है जो इस पीठ को प्रीकंपिल्ड करने के लिए पता लगाएगा ... शायद आप कुछ पर हैं। अप्रयुक्त सीएसएस का पता लगाने के लिए संभावित रूप से मौजूदा टूल्स का उपयोग कर सकते हैं और फिर वहां से संबंधित कम/एसएएसएस की गणना कर सकते हैं। यदि आप इसे एक परियोजना में बनाने का निर्णय लेते हैं तो मुझे गिटहब पर जोड़ें। – TomDunning

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