या साधनाबद्दल
CSS मिनिफिकेशन स्टाईलशीटमधून व्हाइटस्पेस, टिप्पण्या आणि अनावश्यक वर्ण काढून टाकते जेणेकरून ब्राउझरला सर्व्ह करण्यापूर्वी त्याचा आकार कमी होईल. वास्तविक नियम अपरिवर्तित आहेत: एक मिनिफाइड स्टाइलशीट अनमिनिफाईड स्त्रोताला पृष्ठे एकसारखी रेंडर करते. नवीन रेषा, निरर्थक अर्धविराम, टिप्पण्या, हेक्स-कलर शॉर्टहँड संधी आणि शून्य-युनिट शॉर्टकट (0px च्या जागी 0 सह) काढून टाकण्यापासून बचत मिळते.
डझनभर शैलीच्या नियमांसह आधुनिक वेबसाइट्सवर, विशिष्ट घट 20-40% विरुद्ध अनमिनिफाइड स्त्रोत आहे. सर्व्हरवर gzip कॉम्प्रेशनसह एकत्रित केल्याने, किरकोळ बचत संकुचित होते — gzip आधीच पुनरावृत्ती मजकूर प्रभावीपणे संकुचित करते — परंतु संयोजन अद्याप एकट्या कॉम्प्रेशनवर मात करते, विशेषत: जेव्हा स्टाइलशीट कॅश केल्या जातात आणि अनेक अभ्यागतांना अनेक वेळा सर्व्ह केल्या जातात.
हे मिनीफायर एकाच पासमध्ये CSS ची प्रक्रिया करते, url() मूल्यांच्या बाहेरच्या टिप्पण्या काढून टाकते, व्हाइटस्पेस कोलमडते, ब्रेसेस बंद करण्यापूर्वी अनावश्यक अर्धविराम काढून टाकते, शून्य-युनिट शॉर्टहँड लागू करते आणि शक्य असेल तिथे सहा-अंकी हेक्स रंग तीन-अंकी स्वरूपात रूपांतरित करते (#ffffff → #fff). कोणतेही ब्राउझर योग्यरित्या पार्स केलेले आउटपुट वैध CSS राहते.
CSS कमी का
लहान CSS फाइल्स जलद लोड होतात आणि रेंडर-ब्लॉकिंग टाइम ड्रॉप होतात, या दोन्ही फर्स्ट कंटेंटफुल पेंट आणि लार्जेस्ट कंटेंटफुल पेंट स्कोअर सुधारतात. कोअर वेब व्हायटल्स शोध रँकिंगवर परिणाम करतात अशा साइटसाठी, प्रत्येक किलोबाइट रेंडर-ब्लॉकिंग CSS शेव्ह केलेले प्रयत्न योग्य आहेत.
बँडविड्थचा खर्चही मोठ्या प्रमाणात महत्त्वाचा आहे. लाखो पेज व्ह्यू देणाऱ्या साइट्स त्यांच्या स्टाईलशीट ३०% लहान असताना मोजता येण्याजोग्या प्रमाणात बाहेर पडण्याची बचत करतात. CDN बिले, मोबाईल डेटा वापर आणि उर्जेचा वापर या सर्वांचा थोडाफार फायदा होतो. मिनिफिकेशन मूलत: विनामूल्य आहे — देखभाल खर्चाशिवाय एक-वेळची बिल्ड पायरी.
तांत्रिक तपशील
CSS मिनिफिकेशन बहुतेक पुराणमतवादी व्हाइटस्पेस काढणे आहे. निवडक, घोषणा आणि मूल्ये यांच्यातील व्हाईटस्पेस महत्त्वपूर्ण असेल तेथे जतन केले जाते; बाहेरील व्हाईटस्पेस कोलमडली आहे. टिप्पण्या /* ने सुरू झाल्याशिवाय काढल्या जातात! (परवाना संरक्षण टिप्पण्या).
सामान्य शॉर्टकट: 0px, 0em आणि तत्सम शून्य-युनिट मूल्ये 0 होतात; जोडलेल्या अंकांसह सहा-अंकी हेक्स रंग (#ffffff, #336699) तीन-अंकी बनतात (#fff, #369); } काढण्यापूर्वी शेवटचा अर्धविराम. रंगांची नावे हेक्समध्ये आपोआप रूपांतरित होत नाहीत कारण हेक्स काहीवेळा लांब असतो (लाल लांबी #f00 पेक्षा लहान असते; #ff0000 लाल पेक्षा जास्त असते).
आउटपुटने इनपुट स्वीकारणारा कोणताही CSS व्हॅलिडेटर पास केला पाहिजे. ब्राउझर सपोर्ट अपरिवर्तित आहे — मिनिफिकेशन स्वतः नियम बदलत नाही, फक्त त्यांचे मजकूर प्रतिनिधित्व.
वारंवार विचारले जाणारे प्रश्न
- CSS मिनिफिकेशन काय काढून टाकते?
- व्हाइटस्पेस (स्पेसेस, टॅब, न्यूलाइन्स), टिप्पण्या (/* ... */), अनावश्यक अर्धविराम, अनावश्यक शून्य (0.5 → .5), शॉर्टहँड ऑप्टिमायझेशन (#ffffff → #ffff), आणि अनावश्यक युनिट्स (0px → 0).
- उत्पादनात वापरण्यासाठी मिनिफाइड सीएसएस सुरक्षित आहे का?
- होय. Minification सर्व CSS नियम, निवडक आणि मालमत्ता मूल्ये जतन करते. आउटपुट कार्यात्मकदृष्ट्या एकसारखे आहे — ब्राउझर त्याच प्रकारे त्याचा अर्थ लावतात. सर्व उत्पादन वेबसाइटसाठी ही एक मानक सराव आहे.
- मी किती आकार कमी करणे अपेक्षित आहे?
- सामान्यतः 20-50% चांगल्या-लिखित CSS साठी. वर्बोज फॉरमॅटिंगसह जोरदारपणे टिप्पणी केलेला कोड मोठ्या कपात पाहतो. आधीच-कॉम्पॅक्ट CSS फक्त 10-15% कमी होऊ शकते.
- मी gzip वापरत असल्यास मी CSS कमी करावे का?
- होय, दोन्ही. Gzip वारंवार नमुने संकुचित करते, तर मिनिफिकेशन अनावश्यक वर्ण काढून टाकते. एकत्रितपणे ते एकट्यापेक्षा चांगले कॉम्प्रेशन प्रदान करतात. Minified + gzipped CSS सामान्यत: मूळपेक्षा 85-95% लहान असते.
- मी नेहमी लहान केले पाहिजे?
- उत्पादनासाठी होय. डेव्हलपमेंट सोर्स फाइल्ससाठी, नाही — वाचण्यायोग्य CSS देखरेखीसाठी आवश्यक आहे. मिनिफिकेशन बिल्ड वेळेवर चालवा, संपादन वेळेवर नाही.
- माझे CSS सर्व्हरवर अपलोड केले आहे का?
- नाही. मिनीफायर तुमच्या ब्राउझरमध्ये चालतो.
- हे cssnano किंवा csso शी कसे तुलना करते?
- cssnano आणि csso हे उत्पादन बिल्डसाठी पोस्टसीएसएस प्लगइन आहेत; ते अधिक आक्रमक परिवर्तन ऑफर करतात जसे की अनावश्यक नियम विलीन करणे. हे साधन बिल्ड सेटअपशिवाय तदर्थ वापरासाठी मूलभूत सूक्ष्मीकरण समाविष्ट करते.
- मिनिफिकेशनमुळे स्त्रोत नकाशे खंडित होतात का?
- Minification स्त्रोत नकाशे तयार करत नाही; हे साधन फक्त लहान आउटपुट तयार करते. उत्पादनामध्ये मिनिफाइड CSS डीबग करण्यासाठी, तुमच्या बिल्डचा भाग म्हणून स्त्रोत नकाशे तयार करा.