HTML मिनिफ़ाई करें
कमेंट और ख़ाली जगह हटाएं, और पेज के अंदर की CSS और JavaScript छोटी करें — स्क्रीन पर दिखने वाली स्पेसिंग को छेड़े बिना। आपका सोर्स ब्राउज़र से बाहर नहीं जाता।
- कभी स्टोर नहीं होती
- न कतार, न इंतज़ार
- साइनअप नहीं, वॉटरमार्क नहीं
मिनिफ़ाई किया हुआ HTML यहां दिखेगा।
यह कैसे काम करता है
अपना HTML पेस्ट करें
या फ़ाइल यहां छोड़ें। कुछ भी स्टोर नहीं किया जाता — सोर्स कोड के मामले में यह बाक़ी चीज़ों से ज़्यादा मायने रखता है।
चुनें कि कितना छोटा करना है
कमेंट, ख़ाली जगह, इनलाइन CSS और इनलाइन JavaScript — हर एक का अलग स्विच है।
कॉपी या डाउनलोड करें
आपको पहले और बाद का साइज़ दिखाया जाता है, ताकि पता चले कि फ़ाइल कितनी छोटी हुई।
कौन-सी ख़ाली जगह मायने रखती है, और कौन-सी नहीं
HTML में दो इनलाइन एलिमेंट के बीच की स्पेस असली स्पेस होती है, और यही बात एक सावधान मिनिफ़ायर को पेज तोड़ने वाले मिनिफ़ायर से अलग करती है। दो लिंक के बीच की नई लाइन हटा दें तो स्क्रीन पर शब्द आपस में चिपक जाते हैं; किसी pre ब्लॉक या textarea के अंदर का इंडेंटेशन हटा दें तो कंटेंट ही बदल जाता है, क्योंकि वहां ख़ाली जगह ख़ुद कंटेंट है। इसलिए ख़ाली जगह सिर्फ़ वहीं हटाई जाती है जहां यह पक्का है कि वह दिखती नहीं, और जहां दिखती है वहां उसे बिल्कुल नहीं छुआ जाता। जो मिनिफ़ायर हर स्पेस एक जैसे हटा देता है, वह फ़ाइल तो छोटी कर देगा, पर पेज साफ़ तौर पर ग़लत दिखेगा।
कमेंट हटा दिए जाते हैं, क्योंकि वे सोर्स संभालने वाले के लिए होते हैं, पढ़ने वाले के लिए नहीं — सिवाय conditional comments के, जो नोट नहीं बल्कि निर्देश होते हैं। बेकार एट्रिब्यूट भी हटा दिए जाते हैं: script एलिमेंट पर type="text/javascript" दस साल से डिफ़ॉल्ट है, और form पर method="get" वही बताता है जो form वैसे भी करता है।
एट्रिब्यूट के कोटेशन हटाना वैध HTML है, और यह जान-बूझकर डिफ़ॉल्ट रूप से बंद है। स्पेसिफ़िकेशन बिना कोटेशन वाली एट्रिब्यूट वैल्यू की इजाज़त देता है, बशर्ते उसमें स्पेस या अटपटे कैरेक्टर न हों, और ब्राउज़र उसे बिल्कुल ठीक संभालते हैं। टेम्पलेट इंजन अक्सर नहीं संभालते: बिना कोटेशन वाले एट्रिब्यूट के अंदर Blade, Twig, Handlebars या JSX का एक्सप्रेशन ठीक से पार्स होना बंद हो जाता है, और गड़बड़ी बिल्ड के समय ऐसी फ़ाइल में सामने आती है जिसे कोई पढ़ना नहीं चाहता। बचत छोटी है और जोखिम छोटा नहीं, इसलिए इसे आपको ख़ुद चालू करना होता है।
इससे असल में कितना फ़ायदा होता है, इसका सही पैमाना कंप्रेशन के बाद का साइज़ है, पहले का नहीं। सर्वर HTML को gzip या brotli से कंप्रेस करके भेजते हैं, और ये एल्गोरिद्म दोहराई गई ख़ाली जगह को बहुत अच्छे से संभालते हैं — इसलिए जो डॉक्यूमेंट मिनिफ़ाई होकर 100 KB से 70 KB हो जाता है, वह नेटवर्क पर शायद सिर्फ़ 12 KB से 11 KB होगा। HTML मिनिफ़ाई करना फ़ायदेमंद है, पर तीनों में यह सबसे छोटी बचत है; असली वज़न स्टाइलशीट और स्क्रिप्ट में होता है।
जब आपको कुछ और चाहिए
एक फ़ाइल नहीं बल्कि पूरी साइट के लिए यह काम ब्राउज़र टैब में नहीं, बिल्ड में होना चाहिए। आज का हर फ़्रेमवर्क और स्टैटिक साइट जनरेटर बिल्ड के समय HTML मिनिफ़ाई करता है, और इसे हाथ से करने का मतलब है कि जिस दिन कोई भूल गया, उसी दिन यह होना बंद हो जाएगा। उनके पीछे की लाइब्रेरी को एक-एक ट्रांसफ़ॉर्म तक कॉन्फ़िगर किया जा सकता है, जो तब काम आता है जब कोई ख़ास नियम परेशानी दे रहा हो।
मार्कअप ऑप्टिमाइज़ करने से पहले देखें कि पेज असल में कितना भारी है। लगभग हर असली साइट में इमेज, फ़ॉन्ट और JavaScript के सामने HTML नगण्य होता है — Lighthouse या ब्राउज़र का अपना नेटवर्क पैनल सेकंडों में बता देगा, और आम तौर पर जवाब यही निकलता है कि एक बिना ऑप्टिमाइज़ की हुई बड़ी हीरो इमेज पेज के पूरे मार्कअप से ज़्यादा भारी है।
अक्सर पूछे जाने वाले सवाल
क्या मेरा कोड कहीं स्टोर होता है?
नहीं, और सोर्स कोड के लिए यही सबसे अहम बात है। कुछ भी स्टोर नहीं किया जाता और कोई सर्वर उसे कभी नहीं देखता। अपना निजी सोर्स किसी ऐसे ऑनलाइन मिनिफ़ायर में पेस्ट करना जो उसे कहीं भेज देता है, उसे उजागर करना ही है, चाहे साइट डेटा रखने के बारे में कुछ भी कहे — और यह ठीक वैसा काम है जो जल्दबाज़ी में बिना सोचे कर दिया जाता है।
क्या मिनिफ़ाई करने से पेज का दिखना बदल जाएगा?
जिस तरह यहां सेट किया गया है, उससे नहीं। ख़ाली जगह सिर्फ़ वहीं घटाई जाती है जहां वह दिखती नहीं: div और list item जैसे ब्लॉक एलिमेंट के बीच। इनलाइन एलिमेंट के बीच की स्पेस रखी जाती है, क्योंकि उसे हटाने से दो शब्द साफ़ तौर पर जुड़ जाते हैं — "</span> <span>" स्क्रीन पर असली स्पेस है और "</span><span>" नहीं। <pre> और <textarea> के अंदर का कंटेंट बाइट-दर-बाइट वैसा ही रहता है। और वैकल्पिक क्लोज़िंग टैग हटाना जान-बूझकर बंद रखा गया है: यह वैध HTML है, पर कई टेम्पलेट इंजन और ईमेल क्लाइंट उसके नतीजे को ठीक से पार्स नहीं करते।
यह असल में क्या-क्या हटाता है?
कमेंट, वह ख़ाली जगह जो कभी दिखती ही नहीं थी, और <style> व <script> ब्लॉक के अंदर की फ़ालतू जगह। आपके मार्कअप का ढांचा, एट्रिब्यूट और टेक्स्ट नहीं छुए जाते — टूल की जांच पेज को पहले और बाद में पार्स करके की जाती है, और पक्का किया जाता है कि एलिमेंट की गिनती, list item और दिखने वाला टेक्स्ट बिल्कुल एक जैसे हैं।
क्या मुझे एट्रिब्यूट के कोटेशन हटाने चाहिए?
सिर्फ़ तभी जब आउटपुट सीधे ब्राउज़र में जा रहा हो। यह वैध HTML है और थोड़ी बचत करता है, पर बिना कोटेशन वाले एट्रिब्यूट से कुछ टेम्पलेट इंजन, कुछ ईमेल क्लाइंट और ज़्यादातर सीधे-सादे पार्सर टूट जाते हैं। यह डिफ़ॉल्ट रूप से बंद है, और इसे चालू करने पर पेज आपको चेतावनी देता है।
क्या यह पेज के अंदर की CSS और JavaScript भी मिनिफ़ाई करता है?
हां, दोनों को, बिल्कुल हमारे CSS और JavaScript मिनिफ़ायर की तरह। एक अपवाद है: अगर आपकी इनलाइन CSS में नेटिव नेस्टिंग या नई तरह की media query है, तो उस बार CSS वाला हिस्सा बंद कर दिया जाता है — CSS मिनिफ़ायर इन फ़ीचर्स से पुराना है और चुपचाप नियम मिटा देता। HTML फिर भी मिनिफ़ाई होता है, और स्टाइल ग़ायब पेज थमाने की बजाय पेज आपको बता देता है कि ऐसा हुआ।
फ़ाइल कितनी छोटी होगी?
इंडेंटेशन और कमेंट वाले हाथ से लिखे HTML में आम तौर पर 10–30%। उसके बाद बाक़ी ज़्यादातर काम आपके सर्वर का gzip करता है — पहले मिनिफ़ाई करना फिर भी मदद करता है, क्योंकि दोनों का असर जुड़ता है, पर यह उम्मीद न करें कि अकेले मिनिफ़िकेशन से फ़ाइल आधी हो जाएगी।
क्या मैं पूरी साइट एक साथ मिनिफ़ाई कर सकता हूं?
यहां एक बार में एक पेज। कई पेज वाली साइट के लिए, मिनिफ़िकेशन को अपने बिल्ड या डिप्लॉय स्टेप का हिस्सा बनाएं, ताकि हर रिलीज़ पर हर पेज एक ही तरह से हो — और वर्शन कंट्रोल में हमेशा पढ़ने लायक सोर्स रखें, मिनिफ़ाई किया हुआ आउटपुट कभी नहीं।
ध्यान दें: ख़ाली जगह सिर्फ़ वहीं घटाई जाती है जहां वह स्क्रीन पर दिखती नहीं, इसलिए pre और textarea के अंदर का टेक्स्ट बिल्कुल वैसा ही रहता है और इनलाइन एलिमेंट के बीच की स्पेस बनी रहती है। एट्रिब्यूट के कोटेशन हटाना वैध HTML है, पर इससे कुछ टेम्पलेट इंजन टूट जाते हैं — इसीलिए यह डिफ़ॉल्ट रूप से बंद है।
यह टूल अपनी वेबसाइट पर लगाएं
किसी भी ब्लॉग, क्लास पेज या हेल्प आर्टिकल के लिए मुफ़्त। एक स्निपेट पेस्ट करें और आपके विज़िटर इसे सीधे आपके पेज पर इस्तेमाल कर सकेंगे।
मिलते-जुलते टूल्स
CSS मिनिफ़ाई करें
स्टाइलशीट छोटी करें, या जानें कि क्यों नहीं हो सकती
JavaScript मिनिफ़ाई करें
JavaScript कंप्रेस करें, निजी तौर पर
XML फ़ॉर्मैटर
XML को इंडेंट करें ताकि वह पढ़ा जा सके
Markdown प्रीव्यू
अपना Markdown वैसा देखें जैसा GitHub दिखाता है
डुप्लिकेट लाइनें हटाएं
दोहराव हटाएं, सूची को सॉर्ट करें और साफ़ करें
केस कन्वर्टर
UPPER, lower, Title Case, camelCase और बाक़ी सब