जवाबों:
वेब मानकों के अनुसार आपको इनलाइन तत्वों में ब्लॉक तत्वों को डालने की अनुमति नहीं है।
जैसा h1
कि एक ब्लॉक एलिमेंट है और a
इनलाइन एलिमेंट है सही तरीका है:
<h1><a href="#">This is a title</a></h1>
यहां एक लिंक दिया गया है ताकि आप अधिक जान सकें: w3 विज़ुअल फॉर्मेटिंग मॉडल
हालांकि, एक अपवाद है कि HTML5 में एंकर टैग में ब्लॉक-स्तरीय तत्वों (जैसे div
, p
या h*
) को लपेटना मान्य है । एंकर के अलावा इनलाइन तत्वों में ब्लॉक-स्तरीय तत्वों को लपेटना अभी भी मानकों के खिलाफ जाता है।
एचटीएमएल 5 इस विषय को अद्यतन करता है: ए के साथ ब्लॉक-स्तरीय तत्वों को लपेटना अब ठीक है, जैसा कि एक अन्य प्रश्न के तहत कहा गया है: https://stackoverflow.com/a/9782054/674965 और यहाँ: http://davidwalsh.name/html5 तत्वों-लिंक
जहां तक मैं समझता हूं कि HTML5 आपको लिंक टैग में ब्लॉक स्तर के तत्वों को लपेटने की अनुमति देता है। हालाँकि, पुराने ब्राउज़र में बग दिखाई दे सकते हैं। मैंने फ़ायरफ़ॉक्स 3.6.18 के साथ इसका सामना किया और moz-rs-heading = "" अपने कोड में डाला। इस प्रकार मेरी शैली टूट गई। यदि आप किसी काम के बारे में परवाह करते हैं, तो आप div में लिंक टैग लपेट सकते हैं। अतिरिक्त कोड http://oli.jp/2009/html5-block-level-links/ क्यों काम करता है, इसका एक बेहतर विवरण निम्नलिखित है