tl; डॉ
कुछ व्यापक रूप से उपयोग किए जाने वाले प्रोग्राम, जो HTML उत्पन्न करते हैं, केवल ओपनिंग टैग्स उत्पन्न करेंगे, और न ही बंद करने वाले, यह मानते हुए कि ब्राउज़र ठीक से पैराग्राफ बंद कर देगा।
इसके चेहरे पर, यह मुझे लगता है कि यह धारणा कि ब्राउज़र ठीक से पैराग्राफ को बंद कर देगा सही नहीं है। क्या मेरी व्याख्या सही है? आम तौर पर, इस तरह के फैसले में कौन से ट्रेडऑफ शामिल होते हैं?
मोइनमॉइन स्रोत कोड के माध्यम से ब्राउज़ करते हुए, कोड की निम्नलिखित पंक्ति ने मेरी आंख को पकड़ लिया:
# We only open those tags and let the browser auto-close them:
_auto_closing_tags = set(['p'])
( स्रोत )
बाकी कार्यान्वयन को पूरा करने के बाद, मैंने खुद को आश्वस्त किया है कि हाँ, वास्तव में, जब मोइनोइन अपने किसी एक पृष्ठ के लिए html कोड बनाता है, तो यह सही ढंग से पैराग्राफ ओपन टैग उत्पन्न करेगा, जहाँ उचित होगा, जबकि उसी समय उद्देश्यपूर्ण रूप से किसी भी तरह से बचना पैराग्राफ करीब टैग (तुच्छ रूप से ऐसा करने में सक्षम होने के बावजूद)।
मेरे विशिष्ट, बल्कि असामान्य, उपयोग के मामले के लिए, यह व्यवहार सही नहीं है। मुझे बग रिपोर्ट सबमिट करने और / या व्यवहार बदलने के लिए लुभाया गया है। हालांकि, ऐसा लगता है कि यह डिजाइन निर्णय सोच समझकर किया गया था। मैं अच्छी तरह से html मानक, या विभिन्न ब्राउज़र कार्यान्वयन की पेचीदगियों में पारंगत नहीं हूं, यह बताने में सक्षम होने के लिए कि क्या यह सामान्य व्यवहार है, और मुझे लगता है कि इस व्यवहार को सुधारने / बदलने की मेरी वृत्ति हो सकती है गुमराह।
क्या यह कोड ब्राउज़र कार्यान्वयन के बारे में एक मान्य धारणा बना रहा है? क्या उत्पन्न HTML वैध है? अधिक आम तौर पर, मैं यहां क्या कर सकता हूं?