मुख्य विषयवस्तु में जाएं डॉक्स नेविगेशन पर जाएं
Check
in English

नव और टैब

बूटस्ट्रैप के शामिल नेविगेशन घटकों का उपयोग करने के तरीके के लिए दस्तावेज़ीकरण और उदाहरण।

आधार नौसेना

.navबूटस्ट्रैप में उपलब्ध नेविगेशन बेस क्लास से सक्रिय और अक्षम राज्यों में सामान्य मार्कअप और शैलियों को साझा करता है। प्रत्येक शैली के बीच स्विच करने के लिए संशोधक वर्ग स्वैप करें।

आधार .navघटक फ्लेक्सबॉक्स के साथ बनाया गया है और सभी प्रकार के नेविगेशन घटकों के निर्माण के लिए एक मजबूत आधार प्रदान करता है। इसमें कुछ स्टाइल ओवरराइड (सूचियों के साथ काम करने के लिए), बड़े हिट क्षेत्रों के लिए कुछ लिंक पैडिंग, और बुनियादी अक्षम स्टाइल शामिल हैं।

आधार घटक में कोई राज्य .navशामिल नहीं है। .activeनिम्नलिखित उदाहरणों में वर्ग शामिल है, मुख्य रूप से यह प्रदर्शित करने के लिए कि यह विशेष वर्ग किसी विशेष स्टाइल को ट्रिगर नहीं करता है।

सक्रिय स्थिति को सहायक तकनीकों तक पहुंचाने के लिए, aria-currentविशेषता का उपयोग करें - pageवर्तमान पृष्ठ के लिए मान का उपयोग करके, या trueकिसी सेट में वर्तमान आइटम के लिए।

एचटीएमएल
<ul class="nav">
  <li class="nav-item">
    <a class="nav-link active" aria-current="page" href="#">Active</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link disabled">Disabled</a>
  </li>
</ul>

कक्षाओं का उपयोग पूरे समय किया जाता है, इसलिए आपका मार्कअप अत्यधिक लचीला हो सकता है। <ul>ऊपर की तरह s का उपयोग करें , यदि आपके आइटम का क्रम महत्वपूर्ण है, या किसी तत्व <ol>के साथ अपना स्वयं का रोल करें । <nav>क्योंकि .navउपयोग display: flex, एनएवी लिंक एनएवी आइटम के समान व्यवहार करते हैं, लेकिन अतिरिक्त मार्कअप के बिना।

एचटीएमएल
<nav class="nav">
  <a class="nav-link active" aria-current="page" href="#">Active</a>
  <a class="nav-link" href="#">Link</a>
  <a class="nav-link" href="#">Link</a>
  <a class="nav-link disabled">Disabled</a>
</nav>

उपलब्ध शैलियाँ

.navसंशोधक और उपयोगिताओं के साथ s घटक की शैली बदलें । आवश्यकतानुसार मिक्स एंड मैच करें, या अपना खुद का निर्माण करें।

क्षैतिज संरेखण

फ्लेक्सबॉक्स उपयोगिताओं के साथ अपनी नौसेना के क्षैतिज संरेखण को बदलें । डिफ़ॉल्ट रूप से, एनएवी बाएं-संरेखित होते हैं, लेकिन आप उन्हें आसानी से केंद्र या दाएं संरेखित में बदल सकते हैं।

के साथ केंद्रित .justify-content-center:

एचटीएमएल
<ul class="nav justify-content-center">
  <li class="nav-item">
    <a class="nav-link active" aria-current="page" href="#">Active</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link disabled">Disabled</a>
  </li>
</ul>

के साथ सही-संरेखित .justify-content-end:

एचटीएमएल
<ul class="nav justify-content-end">
  <li class="nav-item">
    <a class="nav-link active" aria-current="page" href="#">Active</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link disabled">Disabled</a>
  </li>
</ul>

खड़ा

.flex-columnउपयोगिता के साथ फ्लेक्स आइटम दिशा बदलकर अपने नेविगेशन को ढेर करें । उन्हें कुछ व्यूपोर्ट पर स्टैक करने की आवश्यकता है लेकिन दूसरों को नहीं? प्रतिक्रियाशील संस्करणों का उपयोग करें (उदा., .flex-sm-column).

एचटीएमएल
<ul class="nav flex-column">
  <li class="nav-item">
    <a class="nav-link active" aria-current="page" href="#">Active</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link disabled">Disabled</a>
  </li>
</ul>

<ul>हमेशा की तरह, बिना s के भी लंबवत नेविगेशन संभव है।

एचटीएमएल
<nav class="nav flex-column">
  <a class="nav-link active" aria-current="page" href="#">Active</a>
  <a class="nav-link" href="#">Link</a>
  <a class="nav-link" href="#">Link</a>
  <a class="nav-link disabled">Disabled</a>
</nav>

टैब

ऊपर से मूल नौसेना लेता है और .nav-tabsएक टैब्ड इंटरफ़ेस उत्पन्न करने के लिए कक्षा जोड़ता है। हमारे टैब जावास्क्रिप्ट प्लगइन के साथ टैब करने योग्य क्षेत्र बनाने के लिए उनका उपयोग करें ।

एचटीएमएल
<ul class="nav nav-tabs">
  <li class="nav-item">
    <a class="nav-link active" aria-current="page" href="#">Active</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link disabled">Disabled</a>
  </li>
</ul>

गोलियाँ

वही HTML लें, लेकिन .nav-pillsइसके बजाय उपयोग करें:

एचटीएमएल
<ul class="nav nav-pills">
  <li class="nav-item">
    <a class="nav-link active" aria-current="page" href="#">Active</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link disabled">Disabled</a>
  </li>
</ul>

भरें और औचित्य दें

.navअपनी सामग्री को दो संशोधक वर्गों में से एक पूर्ण उपलब्ध चौड़ाई का विस्तार करने के लिए बाध्य करें । अपने .nav-items के साथ सभी उपलब्ध स्थान को आनुपातिक रूप से भरने के लिए, का उपयोग करें .nav-fill। ध्यान दें कि सभी क्षैतिज स्थान पर कब्जा है, लेकिन प्रत्येक एनएवी आइटम की चौड़ाई समान नहीं है।

एचटीएमएल
<ul class="nav nav-pills nav-fill">
  <li class="nav-item">
    <a class="nav-link active" aria-current="page" href="#">Active</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Much longer nav link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link disabled">Disabled</a>
  </li>
</ul>

-आधारित नेविगेशन का उपयोग करते समय <nav>, आप सुरक्षित रूप से छोड़ सकते हैं .nav-itemक्योंकि केवल .nav-linkस्टाइलिंग <a>तत्वों के लिए आवश्यक है।

एचटीएमएल
<nav class="nav nav-pills nav-fill">
  <a class="nav-link active" aria-current="page" href="#">Active</a>
  <a class="nav-link" href="#">Much longer nav link</a>
  <a class="nav-link" href="#">Link</a>
  <a class="nav-link disabled">Disabled</a>
</nav>

समान-चौड़ाई वाले तत्वों के लिए, उपयोग करें .nav-justified। सभी क्षैतिज स्थान एनएवी लिंक द्वारा कब्जा कर लिए जाएंगे, लेकिन .nav-fillउपरोक्त के विपरीत, प्रत्येक एनएवी आइटम की चौड़ाई समान होगी।

एचटीएमएल
<ul class="nav nav-pills nav-justified">
  <li class="nav-item">
    <a class="nav-link active" aria-current="page" href="#">Active</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Much longer nav link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link disabled">Disabled</a>
  </li>
</ul>

एक आधारित नेविगेशन .nav-fillका उपयोग करने वाले उदाहरण के समान ।<nav>

एचटीएमएल
<nav class="nav nav-pills nav-justified">
  <a class="nav-link active" aria-current="page" href="#">Active</a>
  <a class="nav-link" href="#">Much longer nav link</a>
  <a class="nav-link" href="#">Link</a>
  <a class="nav-link disabled">Disabled</a>
</nav>

फ्लेक्स उपयोगिताओं के साथ कार्य करना

यदि आपको उत्तरदायी एनएवी विविधताओं की आवश्यकता है, तो फ्लेक्सबॉक्स उपयोगिताओं की एक श्रृंखला का उपयोग करने पर विचार करें । अधिक वर्बोज़ होने पर, ये उपयोगिताओं उत्तरदायी ब्रेकपॉइंट्स में अधिक अनुकूलन प्रदान करती हैं। नीचे दिए गए उदाहरण में, हमारी नौसेना सबसे कम ब्रेकपॉइंट पर खड़ी होगी, फिर एक क्षैतिज लेआउट के अनुकूल होगी जो छोटे ब्रेकपॉइंट से शुरू होने वाली उपलब्ध चौड़ाई को भरती है।

एचटीएमएल
<nav class="nav nav-pills flex-column flex-sm-row">
  <a class="flex-sm-fill text-sm-center nav-link active" aria-current="page" href="#">Active</a>
  <a class="flex-sm-fill text-sm-center nav-link" href="#">Longer nav link</a>
  <a class="flex-sm-fill text-sm-center nav-link" href="#">Link</a>
  <a class="flex-sm-fill text-sm-center nav-link disabled">Disabled</a>
</nav>

सुलभता के संबंध में

role="navigation"यदि आप नेविगेशन बार प्रदान करने के लिए एनएवी का उपयोग कर रहे हैं, तो के सबसे तार्किक पैरेंट कंटेनर में जोड़ना सुनिश्चित करें , या संपूर्ण नेविगेशन के चारों ओर एक तत्व <ul>लपेटें । <nav>भूमिका को स्वयं में न जोड़ें <ul>, क्योंकि इससे सहायक तकनीकों द्वारा इसे वास्तविक सूची के रूप में घोषित किए जाने से रोका जा सकेगा।

ध्यान दें कि नेविगेशन बार, भले ही .nav-tabsकक्षा के साथ टैब के रूप में दृष्टिगत रूप से स्टाइल किए गए हों, उन्हें , या विशेषताएँ नहीं दी जानी चाहिए। ये केवल डायनेमिक टैब्ड इंटरफेस के लिए उपयुक्त हैं, जैसा कि ARIA ऑथरिंग प्रैक्टिस गाइड टैब पैटर्न में वर्णित है । एक उदाहरण के लिए इस खंड में गतिशील टैब्ड इंटरफेस के लिए जावास्क्रिप्ट व्यवहार देखें । डायनेमिक टैब्ड इंटरफेस पर विशेषता आवश्यक नहीं है क्योंकि हमारी जावास्क्रिप्ट सक्रिय टैब पर जोड़कर चयनित स्थिति को संभालती है।role="tablist"role="tab"role="tabpanel"aria-currentaria-selected="true"

ड्रॉपडाउन का उपयोग करना

कुछ अतिरिक्त HTML और ड्रॉपडाउन JavaScript प्लगइन के साथ ड्रॉपडाउन मेनू जोड़ें ।

ड्रॉपडाउन वाले टैब

एचटीएमएल
<ul class="nav nav-tabs">
  <li class="nav-item">
    <a class="nav-link active" aria-current="page" href="#">Active</a>
  </li>
  <li class="nav-item dropdown">
    <a class="nav-link dropdown-toggle" data-bs-toggle="dropdown" href="#" role="button" aria-expanded="false">Dropdown</a>
    <ul class="dropdown-menu">
      <li><a class="dropdown-item" href="#">Action</a></li>
      <li><a class="dropdown-item" href="#">Another action</a></li>
      <li><a class="dropdown-item" href="#">Something else here</a></li>
      <li><hr class="dropdown-divider"></li>
      <li><a class="dropdown-item" href="#">Separated link</a></li>
    </ul>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link disabled">Disabled</a>
  </li>
</ul>

ड्रॉपडाउन के साथ गोलियां

एचटीएमएल
<ul class="nav nav-pills">
  <li class="nav-item">
    <a class="nav-link active" aria-current="page" href="#">Active</a>
  </li>
  <li class="nav-item dropdown">
    <a class="nav-link dropdown-toggle" data-bs-toggle="dropdown" href="#" role="button" aria-expanded="false">Dropdown</a>
    <ul class="dropdown-menu">
      <li><a class="dropdown-item" href="#">Action</a></li>
      <li><a class="dropdown-item" href="#">Another action</a></li>
      <li><a class="dropdown-item" href="#">Something else here</a></li>
      <li><hr class="dropdown-divider"></li>
      <li><a class="dropdown-item" href="#">Separated link</a></li>
    </ul>
  </li>
  <li class="nav-item">
    <a class="nav-link" href="#">Link</a>
  </li>
  <li class="nav-item">
    <a class="nav-link disabled">Disabled</a>
  </li>
</ul>

सीएसएस

चर

v5.2.0 . में जोड़ा गया

बूटस्ट्रैप के विकसित हो रहे सीएसएस चर दृष्टिकोण के हिस्से के रूप में, एनएवी अब स्थानीय सीएसएस चर का उपयोग करते हैं .nav, .nav-tabsऔर .nav-pillsवास्तविक समय के अनुकूलन के लिए। CSS वेरिएबल्स के मान Sass के माध्यम से सेट किए जाते हैं, इसलिए Sass अनुकूलन अभी भी समर्थित है।

.navआधार वर्ग पर :

  --#{$prefix}nav-link-padding-x: #{$nav-link-padding-x};
  --#{$prefix}nav-link-padding-y: #{$nav-link-padding-y};
  @include rfs($nav-link-font-size, --#{$prefix}nav-link-font-size);
  --#{$prefix}nav-link-font-weight: #{$nav-link-font-weight};
  --#{$prefix}nav-link-color: #{$nav-link-color};
  --#{$prefix}nav-link-hover-color: #{$nav-link-hover-color};
  --#{$prefix}nav-link-disabled-color: #{$nav-link-disabled-color};
  

.nav-tabsसंशोधक वर्ग पर :

  --#{$prefix}nav-tabs-border-width: #{$nav-tabs-border-width};
  --#{$prefix}nav-tabs-border-color: #{$nav-tabs-border-color};
  --#{$prefix}nav-tabs-border-radius: #{$nav-tabs-border-radius};
  --#{$prefix}nav-tabs-link-hover-border-color: #{$nav-tabs-link-hover-border-color};
  --#{$prefix}nav-tabs-link-active-color: #{$nav-tabs-link-active-color};
  --#{$prefix}nav-tabs-link-active-bg: #{$nav-tabs-link-active-bg};
  --#{$prefix}nav-tabs-link-active-border-color: #{$nav-tabs-link-active-border-color};
  

.nav-pillsसंशोधक वर्ग पर :

  --#{$prefix}nav-pills-border-radius: #{$nav-pills-border-radius};
  --#{$prefix}nav-pills-link-active-color: #{$nav-pills-link-active-color};
  --#{$prefix}nav-pills-link-active-bg: #{$nav-pills-link-active-bg};
  

सास चर

$nav-link-padding-y:                .5rem;
$nav-link-padding-x:                1rem;
$nav-link-font-size:                null;
$nav-link-font-weight:              null;
$nav-link-color:                    var(--#{$prefix}link-color);
$nav-link-hover-color:              var(--#{$prefix}link-hover-color);
$nav-link-transition:               color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out;
$nav-link-disabled-color:           $gray-600;

$nav-tabs-border-color:             $gray-300;
$nav-tabs-border-width:             $border-width;
$nav-tabs-border-radius:            $border-radius;
$nav-tabs-link-hover-border-color:  $gray-200 $gray-200 $nav-tabs-border-color;
$nav-tabs-link-active-color:        $gray-700;
$nav-tabs-link-active-bg:           $body-bg;
$nav-tabs-link-active-border-color: $gray-300 $gray-300 $nav-tabs-link-active-bg;

$nav-pills-border-radius:           $border-radius;
$nav-pills-link-active-color:       $component-active-color;
$nav-pills-link-active-bg:          $component-active-bg;

जावास्क्रिप्ट व्यवहार

bootstrap.jsस्थानीय सामग्री के टैब करने योग्य पैन बनाने के लिए हमारे नेविगेशनल टैब और गोलियों का विस्तार करने के लिए टैब जावास्क्रिप्ट प्लगइन का उपयोग करें—इसे व्यक्तिगत रूप से या संकलित फ़ाइल के माध्यम से शामिल करें।

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

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

This is some placeholder content the Contact tab's associated content. Clicking another tab will toggle the visibility of this one for the next. The tab JavaScript swaps classes to control the content visibility and styling. You can use it with tabs, pills, and any other .nav-powered navigation.

This is some placeholder content the Disabled tab's associated content.

<ul class="nav nav-tabs" id="myTab" role="tablist">
  <li class="nav-item" role="presentation">
    <button class="nav-link active" id="home-tab" data-bs-toggle="tab" data-bs-target="#home-tab-pane" type="button" role="tab" aria-controls="home-tab-pane" aria-selected="true">Home</button>
  </li>
  <li class="nav-item" role="presentation">
    <button class="nav-link" id="profile-tab" data-bs-toggle="tab" data-bs-target="#profile-tab-pane" type="button" role="tab" aria-controls="profile-tab-pane" aria-selected="false">Profile</button>
  </li>
  <li class="nav-item" role="presentation">
    <button class="nav-link" id="contact-tab" data-bs-toggle="tab" data-bs-target="#contact-tab-pane" type="button" role="tab" aria-controls="contact-tab-pane" aria-selected="false">Contact</button>
  </li>
  <li class="nav-item" role="presentation">
    <button class="nav-link" id="disabled-tab" data-bs-toggle="tab" data-bs-target="#disabled-tab-pane" type="button" role="tab" aria-controls="disabled-tab-pane" aria-selected="false" disabled>Disabled</button>
  </li>
</ul>
<div class="tab-content" id="myTabContent">
  <div class="tab-pane fade show active" id="home-tab-pane" role="tabpanel" aria-labelledby="home-tab" tabindex="0">...</div>
  <div class="tab-pane fade" id="profile-tab-pane" role="tabpanel" aria-labelledby="profile-tab" tabindex="0">...</div>
  <div class="tab-pane fade" id="contact-tab-pane" role="tabpanel" aria-labelledby="contact-tab" tabindex="0">...</div>
  <div class="tab-pane fade" id="disabled-tab-pane" role="tabpanel" aria-labelledby="disabled-tab" tabindex="0">...</div>
</div>

आपकी ज़रूरतों को पूरा करने में मदद करने के लिए, यह <ul>-आधारित मार्कअप के साथ काम करता है, जैसा कि ऊपर दिखाया गया है, या किसी भी मनमाने ढंग से "अपना खुद का रोल करें" मार्कअप के साथ काम करता है। ध्यान दें कि यदि आप का उपयोग कर रहे हैं <nav>, तो आपको इसमें सीधे नहीं जोड़ना चाहिए role="tablist", क्योंकि यह नेविगेशन लैंडमार्क के रूप में तत्व की मूल भूमिका को ओवरराइड कर देगा। इसके बजाय, एक वैकल्पिक तत्व पर स्विच करें (नीचे दिए गए उदाहरण में, एक simple ) और इसके चारों ओर <div>लपेटें ।<nav>

<nav>
  <div class="nav nav-tabs" id="nav-tab" role="tablist">
    <button class="nav-link active" id="nav-home-tab" data-bs-toggle="tab" data-bs-target="#nav-home" type="button" role="tab" aria-controls="nav-home" aria-selected="true">Home</button>
    <button class="nav-link" id="nav-profile-tab" data-bs-toggle="tab" data-bs-target="#nav-profile" type="button" role="tab" aria-controls="nav-profile" aria-selected="false">Profile</button>
    <button class="nav-link" id="nav-contact-tab" data-bs-toggle="tab" data-bs-target="#nav-contact" type="button" role="tab" aria-controls="nav-contact" aria-selected="false">Contact</button>
    <button class="nav-link" id="nav-disabled-tab" data-bs-toggle="tab" data-bs-target="#nav-disabled" type="button" role="tab" aria-controls="nav-disabled" aria-selected="false" disabled>Disabled</button>
  </div>
</nav>
<div class="tab-content" id="nav-tabContent">
  <div class="tab-pane fade show active" id="nav-home" role="tabpanel" aria-labelledby="nav-home-tab" tabindex="0">...</div>
  <div class="tab-pane fade" id="nav-profile" role="tabpanel" aria-labelledby="nav-profile-tab" tabindex="0">...</div>
  <div class="tab-pane fade" id="nav-contact" role="tabpanel" aria-labelledby="nav-contact-tab" tabindex="0">...</div>
  <div class="tab-pane fade" id="nav-disabled" role="tabpanel" aria-labelledby="nav-disabled-tab" tabindex="0">...</div>
</div>

टैब प्लगइन गोलियों के साथ भी काम करता है।

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

This is some placeholder content the Profile tab's associated content. Clicking another tab will toggle the visibility of this one for the next. The tab JavaScript swaps classes to control the content visibility and styling. You can use it with tabs, pills, and any other .nav-powered navigation.

This is some placeholder content the Contact tab's associated content. Clicking another tab will toggle the visibility of this one for the next. The tab JavaScript swaps classes to control the content visibility and styling. You can use it with tabs, pills, and any other .nav-powered navigation.

This is some placeholder content the Disabled tab's associated content.

<ul class="nav nav-pills mb-3" id="pills-tab" role="tablist">
  <li class="nav-item" role="presentation">
    <button class="nav-link active" id="pills-home-tab" data-bs-toggle="pill" data-bs-target="#pills-home" type="button" role="tab" aria-controls="pills-home" aria-selected="true">Home</button>
  </li>
  <li class="nav-item" role="presentation">
    <button class="nav-link" id="pills-profile-tab" data-bs-toggle="pill" data-bs-target="#pills-profile" type="button" role="tab" aria-controls="pills-profile" aria-selected="false">Profile</button>
  </li>
  <li class="nav-item" role="presentation">
    <button class="nav-link" id="pills-contact-tab" data-bs-toggle="pill" data-bs-target="#pills-contact" type="button" role="tab" aria-controls="pills-contact" aria-selected="false">Contact</button>
  </li>
  <li class="nav-item" role="presentation">
    <button class="nav-link" id="pills-disabled-tab" data-bs-toggle="pill" data-bs-target="#pills-disabled" type="button" role="tab" aria-controls="pills-disabled" aria-selected="false" disabled>Disabled</button>
  </li>
</ul>
<div class="tab-content" id="pills-tabContent">
  <div class="tab-pane fade show active" id="pills-home" role="tabpanel" aria-labelledby="pills-home-tab" tabindex="0">...</div>
  <div class="tab-pane fade" id="pills-profile" role="tabpanel" aria-labelledby="pills-profile-tab" tabindex="0">...</div>
  <div class="tab-pane fade" id="pills-contact" role="tabpanel" aria-labelledby="pills-contact-tab" tabindex="0">...</div>
  <div class="tab-pane fade" id="pills-disabled" role="tabpanel" aria-labelledby="pills-disabled-tab" tabindex="0">...</div>
</div>

और ऊर्ध्वाधर गोलियों के साथ। आदर्श रूप से, लंबवत टैब के लिए, आपको aria-orientation="vertical"टैब सूची कंटेनर में भी जोड़ना चाहिए।

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

This is some placeholder content the Profile tab's associated content. Clicking another tab will toggle the visibility of this one for the next. The tab JavaScript swaps classes to control the content visibility and styling. You can use it with tabs, pills, and any other .nav-powered navigation.

This is some placeholder content the Disabled tab's associated content.

This is some placeholder content the Messages tab's associated content. Clicking another tab will toggle the visibility of this one for the next. The tab JavaScript swaps classes to control the content visibility and styling. You can use it with tabs, pills, and any other .nav-powered navigation.

This is some placeholder content the Settings tab's associated content. Clicking another tab will toggle the visibility of this one for the next. The tab JavaScript swaps classes to control the content visibility and styling. You can use it with tabs, pills, and any other .nav-powered navigation.

<div class="d-flex align-items-start">
  <div class="nav flex-column nav-pills me-3" id="v-pills-tab" role="tablist" aria-orientation="vertical">
    <button class="nav-link active" id="v-pills-home-tab" data-bs-toggle="pill" data-bs-target="#v-pills-home" type="button" role="tab" aria-controls="v-pills-home" aria-selected="true">Home</button>
    <button class="nav-link" id="v-pills-profile-tab" data-bs-toggle="pill" data-bs-target="#v-pills-profile" type="button" role="tab" aria-controls="v-pills-profile" aria-selected="false">Profile</button>
    <button class="nav-link" id="v-pills-disabled-tab" data-bs-toggle="pill" data-bs-target="#v-pills-disabled" type="button" role="tab" aria-controls="v-pills-disabled" aria-selected="false" disabled>Disabled</button>
    <button class="nav-link" id="v-pills-messages-tab" data-bs-toggle="pill" data-bs-target="#v-pills-messages" type="button" role="tab" aria-controls="v-pills-messages" aria-selected="false">Messages</button>
    <button class="nav-link" id="v-pills-settings-tab" data-bs-toggle="pill" data-bs-target="#v-pills-settings" type="button" role="tab" aria-controls="v-pills-settings" aria-selected="false">Settings</button>
  </div>
  <div class="tab-content" id="v-pills-tabContent">
    <div class="tab-pane fade show active" id="v-pills-home" role="tabpanel" aria-labelledby="v-pills-home-tab" tabindex="0">...</div>
    <div class="tab-pane fade" id="v-pills-profile" role="tabpanel" aria-labelledby="v-pills-profile-tab" tabindex="0">...</div>
    <div class="tab-pane fade" id="v-pills-disabled" role="tabpanel" aria-labelledby="v-pills-disabled-tab" tabindex="0">...</div>
    <div class="tab-pane fade" id="v-pills-messages" role="tabpanel" aria-labelledby="v-pills-messages-tab" tabindex="0">...</div>
    <div class="tab-pane fade" id="v-pills-settings" role="tabpanel" aria-labelledby="v-pills-settings-tab" tabindex="0">...</div>
  </div>
</div>

सरल उपयोग

डायनेमिक टैब्ड इंटरफेस, जैसा कि ARIA ऑथरिंग प्रैक्टिस गाइड टैब पैटर्न में वर्णित है role="tablist", सहायक तकनीकों (जैसे स्क्रीन रीडर) के उपयोगकर्ताओं को उनकी संरचना, कार्यक्षमता और वर्तमान स्थिति से अवगत कराने के लिए अतिरिक्त विशेषताओं role="tab"की role="tabpanel"आवश्यकता होती है । aria-सर्वोत्तम अभ्यास के रूप में, हम <button>टैब के लिए तत्वों का उपयोग करने की सलाह देते हैं, क्योंकि ये ऐसे नियंत्रण होते हैं जो किसी नए पृष्ठ या स्थान पर नेविगेट करने वाले लिंक के बजाय एक गतिशील परिवर्तन को ट्रिगर करते हैं।

ARIA ऑथरिंग प्रैक्टिस पैटर्न के अनुरूप, केवल वर्तमान में सक्रिय टैब ही कीबोर्ड फोकस प्राप्त करता है। जब JavaScript प्लगइन इनिशियलाइज़ किया जाता है, तो यह tabindex="-1"सभी निष्क्रिय टैब नियंत्रणों पर सेट हो जाएगा। एक बार वर्तमान में सक्रिय टैब पर ध्यान केंद्रित करने के बाद, कर्सर कुंजियाँ पिछले/अगले टैब को सक्रिय करती हैं, साथ ही प्लगइन तदनुसार रोविंग को बदल देता है। tabindexहालांकि, ध्यान दें कि जावास्क्रिप्ट प्लगइन क्षैतिज और लंबवत टैब सूचियों के बीच अंतर नहीं करता है जब कर्सर कुंजी इंटरैक्शन की बात आती है: टैब सूची के अभिविन्यास के बावजूद, ऊपर और बाएं कर्सर दोनों पिछले टैब पर जाते हैं, और नीचे और दाएं कर्सर पर जाते हैं अगला टैब।

सामान्य तौर पर, कीबोर्ड नेविगेशन की सुविधा के लिए, टैब पैनल को स्वयं भी फ़ोकस करने योग्य बनाने की अनुशंसा की जाती है, जब तक कि टैब पैनल के अंदर सार्थक सामग्री वाला पहला तत्व पहले से ही फ़ोकस करने योग्य न हो। tabindex="0"JavaScript प्लगइन इस पहलू को संभालने का प्रयास नहीं करता है—जहां उपयुक्त हो, आपको अपने मार्कअप में जोड़कर अपने टैब पैनल को स्पष्ट रूप से फोकस करने योग्य बनाने की आवश्यकता होगी ।
टैब जावास्क्रिप्ट प्लगइन टैब्ड इंटरफेस का समर्थन नहीं करता है जिसमें ड्रॉपडाउन मेनू होते हैं, क्योंकि ये प्रयोज्य और पहुंच दोनों मुद्दों का कारण बनते हैं। उपयोगिता के दृष्टिकोण से, यह तथ्य कि वर्तमान में प्रदर्शित टैब का ट्रिगर तत्व तुरंत दिखाई नहीं दे रहा है (क्योंकि यह बंद ड्रॉपडाउन मेनू के अंदर है) भ्रम पैदा कर सकता है। पहुंच के दृष्टिकोण से, इस प्रकार के निर्माण को मानक WAI ARIA पैटर्न में मैप करने का कोई समझदार तरीका नहीं है, जिसका अर्थ है कि इसे सहायक तकनीकों के उपयोगकर्ताओं के लिए आसानी से समझने योग्य नहीं बनाया जा सकता है।

डेटा विशेषताओं का उपयोग करना

आप किसी भी जावास्क्रिप्ट को लिखे बिना एक टैब या गोली नेविगेशन को केवल निर्दिष्ट करके data-bs-toggle="tab"या data-bs-toggle="pill"किसी तत्व पर सक्रिय कर सकते हैं। .nav-tabsया पर इन डेटा विशेषताओं का उपयोग करें .nav-pills

<!-- Nav tabs -->
<ul class="nav nav-tabs" id="myTab" role="tablist">
  <li class="nav-item" role="presentation">
    <button class="nav-link active" id="home-tab" data-bs-toggle="tab" data-bs-target="#home" type="button" role="tab" aria-controls="home" aria-selected="true">Home</button>
  </li>
  <li class="nav-item" role="presentation">
    <button class="nav-link" id="profile-tab" data-bs-toggle="tab" data-bs-target="#profile" type="button" role="tab" aria-controls="profile" aria-selected="false">Profile</button>
  </li>
  <li class="nav-item" role="presentation">
    <button class="nav-link" id="messages-tab" data-bs-toggle="tab" data-bs-target="#messages" type="button" role="tab" aria-controls="messages" aria-selected="false">Messages</button>
  </li>
  <li class="nav-item" role="presentation">
    <button class="nav-link" id="settings-tab" data-bs-toggle="tab" data-bs-target="#settings" type="button" role="tab" aria-controls="settings" aria-selected="false">Settings</button>
  </li>
</ul>

<!-- Tab panes -->
<div class="tab-content">
  <div class="tab-pane active" id="home" role="tabpanel" aria-labelledby="home-tab" tabindex="0">...</div>
  <div class="tab-pane" id="profile" role="tabpanel" aria-labelledby="profile-tab" tabindex="0">...</div>
  <div class="tab-pane" id="messages" role="tabpanel" aria-labelledby="messages-tab" tabindex="0">...</div>
  <div class="tab-pane" id="settings" role="tabpanel" aria-labelledby="settings-tab" tabindex="0">...</div>
</div>

जावास्क्रिप्ट के माध्यम से

जावास्क्रिप्ट के माध्यम से टैब करने योग्य टैब सक्षम करें (प्रत्येक टैब को अलग-अलग सक्रिय करने की आवश्यकता है):

const triggerTabList = document.querySelectorAll('#myTab button')
triggerTabList.forEach(triggerEl => {
  const tabTrigger = new bootstrap.Tab(triggerEl)

  triggerEl.addEventListener('click', event => {
    event.preventDefault()
    tabTrigger.show()
  })
})

आप अलग-अलग टैब को कई तरह से सक्रिय कर सकते हैं:

const triggerEl = document.querySelector('#myTab button[data-bs-target="#profile"]')
bootstrap.Tab.getInstance(triggerEl).show() // Select tab by name

const triggerFirstTabEl = document.querySelector('#myTab li:first-child button')
bootstrap.Tab.getInstance(triggerFirstTabEl).show() // Select first tab

फीका प्रभाव

टैब को फीका करने के लिए, .fadeप्रत्येक में जोड़ें .tab-pane. पहले टैब फलक को भी .showप्रारंभिक सामग्री को दृश्यमान बनाना होगा।

<div class="tab-content">
  <div class="tab-pane fade show active" id="home" role="tabpanel" aria-labelledby="home-tab" tabindex="0">...</div>
  <div class="tab-pane fade" id="profile" role="tabpanel" aria-labelledby="profile-tab" tabindex="0">...</div>
  <div class="tab-pane fade" id="messages" role="tabpanel" aria-labelledby="messages-tab" tabindex="0">...</div>
  <div class="tab-pane fade" id="settings" role="tabpanel" aria-labelledby="settings-tab" tabindex="0">...</div>
</div>

तरीकों

अतुल्यकालिक तरीके और संक्रमण

सभी एपीआई विधियाँ अतुल्यकालिक हैं और एक संक्रमण शुरू करती हैं । ट्रांज़िशन शुरू होते ही वे कॉलर के पास वापस आ जाते हैं लेकिन उसके समाप्त होने से पहलेइसके अलावा, एक संक्रमण घटक पर एक विधि कॉल को नजरअंदाज कर दिया जाएगा ।

अधिक जानकारी के लिए हमारे जावास्क्रिप्ट दस्तावेज़ देखें

आपकी सामग्री को एक टैब तत्व के रूप में सक्रिय करता है।

आप कंस्ट्रक्टर के साथ एक टैब इंस्टेंस बना सकते हैं, उदाहरण के लिए:

const bsTab = new bootstrap.Tab('#myTab')
तरीका विवरण
dispose किसी तत्व के टैब को नष्ट कर देता है।
getInstance स्टेटिक विधि जो आपको डीओएम तत्व से जुड़े टैब इंस्टेंस को प्राप्त करने की अनुमति देती है, आप इसे इस तरह उपयोग कर सकते हैं bootstrap.Tab.getInstance(element):।
getOrCreateInstance स्टेटिक विधि जो एक डोम तत्व से जुड़े एक टैब इंस्टेंस को लौटाती है या यदि इसे प्रारंभ नहीं किया गया था तो एक नया बनाएं। आप इसे इस तरह इस्तेमाल कर सकते हैं bootstrap.Tab.getOrCreateInstance(element):।
show दिए गए टैब का चयन करता है और उससे संबंधित फलक दिखाता है। कोई अन्य टैब जिसे पहले चुना गया था, अचयनित हो जाता है और उसका संबद्ध फलक छिपा होता है। टैब फलक वास्तव में दिखाए जाने से पहले कॉलर पर वापस आ जाता है (यानी shown.bs.tabघटना होने से पहले)।

आयोजन

एक नया टैब दिखाते समय, ईवेंट निम्न क्रम में सक्रिय होते हैं:

  1. hide.bs.tab(वर्तमान सक्रिय टैब पर)
  2. show.bs.tab(होने वाले टैब पर)
  3. hidden.bs.tab(पिछले सक्रिय टैब पर, hide.bs.tabईवेंट के समान ही)
  4. shown.bs.tab(नए सक्रिय हाल-दिखाए गए टैब पर, show.bs.tabईवेंट के समान ही)

यदि कोई टैब पहले से सक्रिय नहीं था, तो hide.bs.tabऔर hidden.bs.tabईवेंट सक्रिय नहीं होंगे।

घटना प्रकार विवरण
hide.bs.tab यह घटना तब सक्रिय होती है जब एक नया टैब दिखाया जाना है (और इस प्रकार पिछला सक्रिय टैब छिपाया जाना है)। वर्तमान सक्रिय टैब और नए शीघ्र-से-सक्रिय टैब को क्रमशः उपयोग event.targetऔर लक्षित करने के लिए।event.relatedTarget
hidden.bs.tab एक नया टैब दिखाए जाने के बाद यह घटना सक्रिय होती है (और इस प्रकार पिछला सक्रिय टैब छिपा हुआ है)। पिछले सक्रिय टैब और नए सक्रिय टैब को क्रमशः उपयोग event.targetऔर लक्षित करने के लिए।event.relatedTarget
show.bs.tab यह घटना टैब शो पर सक्रिय होती है, लेकिन नया टैब दिखाए जाने से पहले। क्रमशः सक्रिय टैब और पिछले सक्रिय टैब (यदि उपलब्ध हो) का उपयोग करें event.targetऔर लक्षित करें।event.relatedTarget
shown.bs.tab एक टैब दिखाए जाने के बाद यह ईवेंट टैब शो पर सक्रिय होता है। क्रमशः सक्रिय टैब और पिछले सक्रिय टैब (यदि उपलब्ध हो) का उपयोग करें event.targetऔर लक्षित करें।event.relatedTarget
const tabEl = document.querySelector('button[data-bs-toggle="tab"]')
tabEl.addEventListener('shown.bs.tab', event => {
  event.target // newly activated tab
  event.relatedTarget // previous active tab
})