HTML5 वेबसाइट में <शीर्षक>, <शीर्ष लेख>, <h1> और <h2> का समुचित उपयोग?


15

मैं कई दिनों से इस विषय पर अध्ययन कर रहा हूं और कई परस्पर विरोधी सुझावों को खोज अनुक्रमण के संबंध में पाया है। मैं एक ऐसे प्रोजेक्ट पर काम कर रहा हूं जिसमें बहुत सारे अलग-अलग पृष्ठ हैं जिनमें साधारण उत्पाद विवरणों से लेकर गहराई तक उपयोगकर्ता प्रलेखन शामिल हैं।

मैंने इस प्रश्न को खंडों में तोड़ दिया है क्योंकि मुझे लगता है कि यह इस प्रश्न के भविष्य के पाठकों के लिए इसे और अधिक उपयोगी बना देगा।

मेरे कुछ निष्कर्ष

कई वेबसाइटों को लगता है कि निम्नलिखित की तरह दस्तावेज़ की रूपरेखा है:

1. Programmer's Guide  (https://www.dartlang.org/docs/)
    1. Getting Started
    2. Concepts
        1. Libraries
        2. Fundamental classes
        etc.

मुझे यह दिलचस्प लगता है कि उपरोक्त उदाहरण <nav>एक उपयुक्त शीर्षक के साथ तत्व का उपयोग नहीं करता है । मुझे रूपरेखा की सादगी पसंद है और Google होने के नाते मैं काफी निश्चित हूं कि वे जानते हैं कि जब वे इस पर आते हैं तो वे क्या कर रहे हैं।

लेकिन मैं उलझन में हूँ क्योंकि उपरोक्त रूपरेखा "डार्ट" का कोई उल्लेख नहीं करता है। सिमेंटिक अर्थ में "डार्ट" का एकमात्र उल्लेख मुख्य दस्तावेज़ <title>तत्व "प्रोग्रामर गाइड। डार्ट: संरचित वेब ऐप्स" के भीतर लगता है ।

MDN (मोज़िला डेवलपर नेटवर्क) एक वेबसाइट का एक और शानदार उदाहरण है जो इस प्रिंसिपल का अनुसरण करता है। कई <h1>शीर्षक पूर्ण संदर्भ ( HTML5 दस्तावेज़ के अनुभाग और रूपरेखा ) प्रदान करते हैं:

1. Sections and Outlines of an HTML5 Document
    1. Untitled Section (nav)
    2. Untitled Section (nav)
    3. Structure of a Document in HTML 4
    4. Problems Solved by HTML5

जब कि दूसरों को संदर्भ से कोई मतलब नहीं है ( बचने के लिए अप्रचलित अभ्यास )। उदाहरण के लिए, निम्नलिखित HTML5 रूपरेखा सीएसएस, HTML5 या C # से संबंधित है ... केवल दस्तावेज़ रूपरेखा के साथ जाने के लिए, कौन जानता है!

1. Obsolete practices to avoid
    1. Untitled Section (nav)
    2. Untitled Section (nav)
    3. Doctype
    4. <meta> element and charset attribute

मामलों को सबसे खराब बनाने के लिए, क्या होगा यदि एमडीएन में एक ही (या बहुत समान) शीर्षक के साथ 2 विषय थे "अप्रचलित प्रथाओं से बचने के लिए" जहां एक उनके सीएसएस गाइड का हिस्सा है और दूसरा उनके HTML गाइड का हिस्सा है ...

स्पेक्ट्रम वेबसाइटों के दूसरे छोर पर <body>उत्पाद के नाम (फू) या विषय कंटेनर (फू के लिए उपयोगकर्ता गाइड) के लिए मुख्य- बेल्ड हेडिंग का उपयोग किया जाता है । जहां बाद के सभी पृष्ठ <h2>वास्तविक पृष्ठ शीर्षक के लिए उपयोग होते हैं ।

प्रश्न

DOM और HTML5 की रूपरेखा का उपयोग करके MDN वेबसाइट पर पाए जाने वाले वेबपेज के संदर्भ में खोज इंजन कैसे पता लगाते हैं?

निम्न HTML5 पृष्ठ को चिह्नित करने का सही तरीका क्या है ताकि Google पृष्ठ को उपयुक्त संदर्भ में अनुक्रमित कर सके? इस का उपयोग शामिल <title>, <header>और <h1>तत्वों।

  • कंपनी का नाम
  • उत्पाद का नाम
  • उपयोगकर्ता गाइड
  • शुरू करना

HTML में सबसे महत्वपूर्ण शीर्षक जो एक वेब ब्राउज़र में देखा जाता है, क्या यह पूरी वेबसाइट (कंपनी का नाम या उत्पाद का नाम), विषयों का संग्रह (उपयोगकर्ता गाइड) या हाथ में वास्तविक विषय (आरंभ करना) के संदर्भ का प्रतिनिधित्व करना चाहिए ?

मेरा सबसे अच्छा अनुमान

<!DOCTYPE html>
<html>
<head>
    <title>Getting Started | User Guide | Product Name - Company Name</title>
</head>
<body>
    <header role="banner"> <!-- Note: Lack of <h1> in here -->
        <a id="logo" href="http://example.com">Company Name</a>
        <nav>
            <h1>Site Navigation</h1>
            <ul> ... </ul>
        </nav>
    </header>
    <main role="main">
        <div class="product-name">Product Name</div>
        <div class="document">User Guide</div>

        <h1>Getting Started</h1>

        <p>blah</p>
    </main>
</body>
</html>

रूपरेखा के लिए अग्रणी:

1. Getting Started

क्या मैं आपको सही ढंग से समझता हूं कि आप प्रलेखन की तलाश कर रहे हैं यदि और खोज इंजन रूपरेखा का उपयोग कैसे करते हैं? (और सलाह के लिए जो मार्कअप का उपयोग करने के लिए नहीं, एसईओ से असंबंधित)
5

@ मैं सीखना चाहता हूं कि एमडीएन / डार्ट डॉक्यूमेंटेशन में इस्तेमाल की जाने वाली तकनीक काम क्यों करती है और अगर मुझे कोई महत्वपूर्ण ज्ञान याद आ रहा है। वे <title>संदर्भ प्रदान करने के लिए भरोसा करने लगते हैं । उदाहरण के लिए, यह एक बुरा विचार ही शामिल करने के लिए है <h1>User Guide for Ubermachine</h1>, जहां विषय शीर्षक के साथ प्रस्तुत किया है हर पृष्ठ पर <h2>Getting Started</h2>... या रूपरेखा के साथ शुरू करना चाहिए <h1>Getting Started</h1>एक साथ के साथ <title>Getting Started | User Guide for Ubermachine</title>खोज इंजन के लिए उपयोगी संदर्भ प्रदान करने के लिए। यह एक SEO सवाल है।
ली हेस

यदि 2 अलग-अलग उत्पाद थे, तो यह बहुत संभावना है कि 2 उपयोगकर्ता मार्गदर्शक होंगे जिनमें "गेटिंग स्टार्टेड" विषय होगा। इसलिए एमडीएन दृष्टिकोण के साथ मेरी चिंता का हिस्सा है और मैं जानना चाहता हूं कि क्या <title>पर्याप्त संदर्भ प्रदान करता है।
ली हेस

2
मुझे खोज इंजन के बारे में चिंता नहीं होगी। यदि आप इस स्तर पर सोच रहे हैं, तो आपकी बाकी साइट संभवतः तकनीकी रूप से ठीक होगी, और सर्च इंजन के लिए पर्याप्त होगी। इसके बजाय अपने उपयोगकर्ताओं के बारे में सोचें।
जॉन मुलर

1
आपने URL का उल्लेख नहीं किया है। यह भी मानव और रोबोट मित्रता के लिए एक महत्वपूर्ण तंत्र है। उदाहरण के लिए, जबकि आपके दो MDN उदाहरण <h1> s असंगत री हैं। संदर्भ, उनके दोनों URL में पृष्ठ-शीर्षक से पहले / वेब / गाइड / html / शामिल हैं।
मार्टिन एफ

जवाबों:


8

अपनी व्यापक वेब खोजों के दौरान मुझे एक उद्धरण मिला है जो मुझे उपयोगी और संदेहास्पद लगता है कि इस प्रश्न के भविष्य के पाठक भी होंगे।

<h1>शीर्ष-स्तरीय शीर्षक के लिए उपयोग करें

<h1> किसी दस्तावेज़ के प्रथम-स्तरीय शीर्षक के लिए HTML तत्व है:

  • यदि दस्तावेज़ मूल रूप से स्टैंड-अलोन है, उदाहरण के लिए चीजें जेनेवा में देखें और करें, शीर्ष-स्तरीय शीर्षक शायद शीर्षक के समान है।
  • यदि यह एक संग्रह का हिस्सा है, उदाहरण के लिए पालतू जानवरों के बारे में पृष्ठों के संग्रह में कुत्तों पर एक अनुभाग, तो शीर्ष स्तर के शीर्षक को एक निश्चित मात्रा में संदर्भ ग्रहण करना चाहिए; सिर्फ <h1>Dogs</h1>शीर्षक लिखते समय किसी भी संदर्भ में काम करना चाहिए: डॉग्स - योर गाइड टू पेट्स।

मूल स्रोत: http://www.w3.org/QA/Tips/Use_h1_for_Title

उपरोक्त उद्धरण से लगता है कि दस्तावेज़-स्तरीय <h1>तत्व मान सकता है कि वर्तमान पृष्ठ का संदर्भ जो <title>स्वयं का उपयोग करके परिभाषित किया गया है। तो शायद अगर वहाँ एक ही साथ कई पृष्ठों थे <h1>तो यह ठीक होगा ...

<title>Getting Started | Guide | Uber Product - Company Name</title>
<h1>Getting Started</h1>

<title>Getting Started | Guide | Other Uber Product - Company Name</title>
<h1>Getting Started</h1>

यह भी देखें : <शीर्षक>: गुणवत्ता वेब पेज का सबसे महत्वपूर्ण तत्व

एक उत्तर को स्वीकार करने से पहले मैं प्रतीक्षा करना चाहता हूं और देखना चाहता हूं कि दूसरे क्या सोचते हैं।


अच्छा सवाल अपडेट और अनुवर्ती जवाब। हो सकता है कि अन्य लोग झंकार करें, यदि आपको लगता है कि यह सही है, तो आपके उत्तर को स्वीकार नहीं करेंगे।
दान

1

मैं शीर्ष लेख में 'उत्पाद का नाम' के लिए H1 या किसी शीर्ष स्तर के उपयोग का विवाद करूंगा।
H1 उत्पाद, एप्लिकेशन या साइट के पृष्ठ के शीर्षक का प्रतिनिधित्व करता है।
एक्सेसिबिलिटी और SEO दोनों उद्देश्यों के लिए प्रत्येक पृष्ठ पर एक दोहराया H1 हानिकारक होगा। Unfortunetaly इस मामले में कोई सिमेंटिक HTML टैग कि अर्थ है 'साइट शीर्षक' इतना ही एकमात्र विकल्प एक है <div>या <p>या शायद यह भी एक <strong>यह कुछ अर्थ जोर देने के लिए टैग।

<main>
  <header>
    <div>Logo</div>
    <div>Product name</div>
    <nav>
      <ul> ... </ul>
    </nav>
  </header>
  <section>
    <h1>Getting started</h1>
    ...content
  </section>
</main>

0

एक सही उत्तर नहीं है, अलग-अलग विकल्प हैं।

नीचे कुछ विकल्प दिए गए हैं, लेकिन उनमें से सभी में पेशेवरों और विपक्ष हैं:

यह विकल्प कमोबेश आपके द्वारा प्रस्तुत किया गया है, लेकिन कुछ अधिक शीर्षक दिखाता है और सामग्री कहां जाएगी, साथ ही यह विचार भी है कि लोगो, केवल छवि / पाठ की तुलना में अधिक जटिल तत्व होगा, इसमें सभी संबंधित होंगे तत्वों कंपनी के व्यक्तित्व के रूप में एक छाप बनाने के लिए, कि क्यों अनुभाग। फिर। यह एक खंड नहीं हो सकता है, लेकिन सिर्फ एक div है।

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>Getting Started | User Guide | Product Name - Company Name</title>
    </head>
    <body>
        <section>
            <a id="logo" href="http://example.com">Company Name</a>
        </section>
        <nav>
            <ul> ... </ul>
        </nav>
        <main>
            <header>
                <h1>Product Name</h1>
            </header>
            <p>...</p>
            <header>
                <h1>User Guide</h1>
                <p>...</p>
            </header>
            <p>...</p>
        </main>
    </body>
</html>

यह अगला पृष्ठ के प्रासंगिक भाग को दिखाने के लिए मुख्य टैग का परिचय देता है। यह टैग अभी भी समर्थन और भविष्य पर स्केच है, लेकिन यह स्पष्ट संकेत देता है कि नेविगेशन का उत्पाद या पृष्ठ से कोई लेना-देना नहीं है। अनुभाग टैग अन्य कंटेनर हो सकता है और मुख्य कुछ लोगों के लिए लेख हो सकता है।

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>Getting Started | User Guide | Product Name - Company Name</title>
    </head>
    <body>
        <section>
            <a id="logo" href="http://example.com">Company Name</a>
        </section>
        <nav>
            <ul> ... </ul>
        </nav>
        <main>
            <header>
                <h1>Product Name</h1>
            </header>
            <section>
                <header>
                    <h1>User Guide</h1>
                    <p>...</p>
                </header>
                <p>...</p>
            </section>
        </main>
    </body>
</html>

अगले एक लेख का उपयोग करता है क्योंकि अधिकांश लोग उस एक का उपयोग करने के लिए इच्छुक हैं।

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>Getting Started | User Guide | Product Name - Company Name</title>
    </head>
    <body>
        <article>
            <a id="logo" href="http://example.com">Company Name</a>
            <nav>
                <ul> ... </ul>
            </nav>
            <main>
                <header>
                    <h1>Product Name</h1>
                </header>
                <section>
                    <header>
                        <h1>User Guide</h1>
                        <p>...</p>
                    </header>
                    <p>...</p>
                </section>
            </main>
        </article>
    </body>
</html>

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

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>Getting Started | User Guide | Product Name - Company Name</title>
    </head>
    <body>
        <nav>
            <ul> ... </ul>
        </nav>
        <main>
            <header>
                <h1>Product name</h1>
            </header>
            <section>
                <header>
                    <h1>description of product</h1>
                </header>
                <p>...</p>
            </section>
            <section>
                <header>
                    <h1>user guide</h1>
                </header>
                <p>...</p>
            </section>
            <section>
                <header>
                    <h1>Getting started</h1>
                </header>
                <p>...</p>
            </section>
        </main>

    </body>
</html>

और अभी भी, वहाँ अधिक विकल्प हैं।


2
वे सब मुझे बहुत जटिल लगते हैं।
मार्टिन एफ
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.