Navs आणि टॅब
बूटस्ट्रॅपचे समाविष्ट नॅव्हिगेशन घटक कसे वापरावे यासाठी दस्तऐवजीकरण आणि उदाहरणे.
बेस एनएव्ही
.nav
बूटस्ट्रॅपमध्ये उपलब्ध नॅव्हिगेशन बेस क्लासपासून सक्रिय आणि अक्षम राज्यांपर्यंत सामान्य मार्कअप आणि शैली सामायिक करते. प्रत्येक शैली दरम्यान स्विच करण्यासाठी सुधारक वर्ग स्वॅप करा.
बेस .nav
घटक flexbox सह तयार केला आहे आणि सर्व प्रकारचे नेव्हिगेशन घटक तयार करण्यासाठी मजबूत पाया प्रदान करतो. यात काही शैली ओव्हरराइड्स (याद्यांसह कार्य करण्यासाठी), मोठ्या हिट क्षेत्रांसाठी काही लिंक पॅडिंग आणि मूलभूत अक्षम शैली समाविष्ट आहे.
मूळ .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>
वरीलप्रमाणे वापरा किंवा एखाद्या घटकासह तुमचे स्वतःचे रोल करा. वापरामुळे , एनएव्ही लिंक्स एनएव्ही आयटम्सप्रमाणेच वागतात, परंतु अतिरिक्त मार्कअपशिवाय.<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
टॅब केलेला इंटरफेस तयार करण्यासाठी वर्ग जोडते. आमच्या टॅब 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">
<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-item
s ने सर्व उपलब्ध जागा प्रमाणानुसार भरण्यासाठी, वापरा .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>
सुलभतेबाबत
जर तुम्ही नेव्हिगेशन बार प्रदान करण्यासाठी navs वापरत असाल तर, role="navigation"
च्या सर्वात तार्किक मूळ कंटेनरमध्ये एक जोडण्याचे सुनिश्चित करा किंवा संपूर्ण नेव्हिगेशनभोवती <ul>
एक घटक गुंडाळा. <nav>
भूमिका स्वतःमध्ये जोडू नका <ul>
, कारण हे सहाय्यक तंत्रज्ञानाद्वारे वास्तविक सूची म्हणून घोषित होण्यापासून प्रतिबंधित करेल.
लक्षात घ्या की नेव्हिगेशन बार, जरी .nav-tabs
क्लाससह टॅब म्हणून दृश्यमानपणे शैलीबद्ध केले असले तरी , , किंवा विशेषता देऊ नयेत . हे केवळ डायनॅमिक टॅब केलेल्या इंटरफेससाठी योग्य आहेत, जसे की WAI ARIA ऑथरिंग प्रॅक्टिसेसमध्ये वर्णन केले आहे . उदाहरणासाठी या विभागात डायनॅमिक टॅब केलेल्या इंटरफेससाठी JavaScript वर्तन पहा . डायनॅमिक टॅब केलेल्या इंटरफेसवर विशेषता आवश्यक नाही कारण आमची JavaScript सक्रिय टॅबवर जोडून निवडलेली स्थिती हाताळते .role="tablist"
role="tab"
role="tabpanel"
aria-current
aria-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>
सस
चल
$nav-link-padding-y: .5rem;
$nav-link-padding-x: 1rem;
$nav-link-font-size: null;
$nav-link-font-weight: null;
$nav-link-color: $link-color;
$nav-link-hover-color: $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;
JavaScript वर्तन
टॅब JavaScript प्लगइन वापरा—त्याला वैयक्तिकरित्या किंवा संकलित bootstrap.js
फाइलद्वारे समाविष्ट करा—स्थानिक सामग्रीचे टॅब करण्यायोग्य फलक तयार करण्यासाठी आमचे नॅव्हिगेशनल टॅब आणि गोळ्यांचा विस्तार करण्यासाठी.
डायनॅमिक टॅब केलेले इंटरफेस, WAI ARIA ऑथरिंग प्रॅक्टिसेसमध्ये वर्णन केल्याप्रमाणे , त्यांची रचना, कार्यक्षमता आणि सद्य स्थिती सहाय्यक तंत्रज्ञानाच्या वापरकर्त्यांना (जसे की स्क्रीन रीडर) सांगण्यासाठी role="tablist"
, role="tab"
, role="tabpanel"
, आणि अतिरिक्त विशेषता आवश्यक आहेत. aria-
सर्वोत्तम सराव म्हणून, आम्ही <button>
टॅबसाठी घटक वापरण्याची शिफारस करतो, कारण ही नियंत्रणे आहेत जी डायनॅमिक बदल ट्रिगर करतात, नवीन पृष्ठ किंवा स्थानावर नेव्हिगेट करणार्या लिंकऐवजी.
लक्षात घ्या की डायनॅमिक टॅब केलेल्या इंटरफेसमध्ये ड्रॉपडाउन मेनू असू नये , कारण यामुळे उपयोगिता आणि प्रवेशयोग्यता दोन्ही समस्या उद्भवतात. वापरण्यायोग्यतेच्या दृष्टीकोनातून, सध्या प्रदर्शित केलेला टॅबचा ट्रिगर घटक त्वरित दृश्यमान नसतो (कारण ते बंद ड्रॉपडाउन मेनूमध्ये आहे) गोंधळ निर्माण करू शकतो. प्रवेशयोग्यतेच्या दृष्टीकोनातून, या प्रकारची रचना मानक WAI ARIA पॅटर्नमध्ये मॅप करण्याचा सध्या कोणताही योग्य मार्ग नाही, याचा अर्थ असा की सहाय्यक तंत्रज्ञानाच्या वापरकर्त्यांना ते सहजपणे समजण्यायोग्य बनवता येत नाही.
ही काही प्लेसहोल्डर सामग्री आहे जी होम टॅबशी संबंधित सामग्री आहे. दुसर्या टॅबवर क्लिक केल्याने पुढील टॅबची दृश्यमानता टॉगल होईल. टॅब JavaScript सामग्री दृश्यमानता आणि शैली नियंत्रित करण्यासाठी वर्ग बदलते. तुम्ही ते टॅब, गोळ्या आणि इतर कोणत्याही-सक्षम .nav
नेव्हिगेशनसह वापरू शकता.
ही काही प्लेसहोल्डर सामग्री आहे जी प्रोफाइल टॅबशी संबंधित सामग्री आहे. दुसर्या टॅबवर क्लिक केल्याने पुढील टॅबची दृश्यमानता टॉगल होईल. टॅब JavaScript सामग्री दृश्यमानता आणि शैली नियंत्रित करण्यासाठी वर्ग बदलते. तुम्ही ते टॅब, गोळ्या आणि इतर कोणत्याही-सक्षम .nav
नेव्हिगेशनसह वापरू शकता.
संपर्क टॅबशी संबंधित सामग्री ही काही प्लेसहोल्डर सामग्री आहे. दुसर्या टॅबवर क्लिक केल्याने पुढील टॅबची दृश्यमानता टॉगल होईल. टॅब JavaScript सामग्री दृश्यमानता आणि शैली नियंत्रित करण्यासाठी वर्ग बदलते. तुम्ही ते टॅब, गोळ्या आणि इतर कोणत्याही-सक्षम .nav
नेव्हिगेशनसह वापरू शकता.
<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="contact-tab" data-bs-toggle="tab" data-bs-target="#contact" type="button" role="tab" aria-controls="contact" aria-selected="false">Contact</button>
</li>
</ul>
<div class="tab-content" id="myTabContent">
<div class="tab-pane fade show active" id="home" role="tabpanel" aria-labelledby="home-tab">...</div>
<div class="tab-pane fade" id="profile" role="tabpanel" aria-labelledby="profile-tab">...</div>
<div class="tab-pane fade" id="contact" role="tabpanel" aria-labelledby="contact-tab">...</div>
</div>
तुमच्या गरजा पूर्ण करण्यासाठी, हे <ul>
वर दर्शविल्याप्रमाणे -आधारित मार्कअपसह किंवा कोणत्याही अनियंत्रित "तुमचे स्वत:चे" मार्कअपसह कार्य करते. लक्षात घ्या की तुम्ही वापरत असल्यास <nav>
, तुम्ही त्यात थेट जोडू नये role="tablist"
, कारण हे नेव्हिगेशन लँडमार्क म्हणून घटकाची मूळ भूमिका ओव्हरराइड करेल. त्याऐवजी, पर्यायी घटकावर स्विच करा (खालील उदाहरणात, एक साधे <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>
</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">...</div>
<div class="tab-pane fade" id="nav-profile" role="tabpanel" aria-labelledby="nav-profile-tab">...</div>
<div class="tab-pane fade" id="nav-contact" role="tabpanel" aria-labelledby="nav-contact-tab">...</div>
</div>
टॅब प्लगइन गोळ्यांसह देखील कार्य करते.
ही काही प्लेसहोल्डर सामग्री आहे जी होम टॅबशी संबंधित सामग्री आहे. दुसर्या टॅबवर क्लिक केल्याने पुढील टॅबची दृश्यमानता टॉगल होईल. टॅब JavaScript सामग्री दृश्यमानता आणि शैली नियंत्रित करण्यासाठी वर्ग बदलते. तुम्ही ते टॅब, गोळ्या आणि इतर कोणत्याही-सक्षम .nav
नेव्हिगेशनसह वापरू शकता.
ही काही प्लेसहोल्डर सामग्री आहे जी प्रोफाइल टॅबशी संबंधित सामग्री आहे. दुसर्या टॅबवर क्लिक केल्याने पुढील टॅबची दृश्यमानता टॉगल होईल. टॅब JavaScript सामग्री दृश्यमानता आणि शैली नियंत्रित करण्यासाठी वर्ग बदलते. तुम्ही ते टॅब, गोळ्या आणि इतर कोणत्याही-सक्षम .nav
नेव्हिगेशनसह वापरू शकता.
संपर्क टॅबशी संबंधित सामग्री ही काही प्लेसहोल्डर सामग्री आहे. दुसर्या टॅबवर क्लिक केल्याने पुढील टॅबची दृश्यमानता टॉगल होईल. टॅब JavaScript सामग्री दृश्यमानता आणि शैली नियंत्रित करण्यासाठी वर्ग बदलते. तुम्ही ते टॅब, गोळ्या आणि इतर कोणत्याही-सक्षम .nav
नेव्हिगेशनसह वापरू शकता.
<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>
</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">...</div>
<div class="tab-pane fade" id="pills-profile" role="tabpanel" aria-labelledby="pills-profile-tab">...</div>
<div class="tab-pane fade" id="pills-contact" role="tabpanel" aria-labelledby="pills-contact-tab">...</div>
</div>
आणि उभ्या गोळ्या सह.
ही काही प्लेसहोल्डर सामग्री आहे जी होम टॅबशी संबंधित सामग्री आहे. दुसर्या टॅबवर क्लिक केल्याने पुढील टॅबची दृश्यमानता टॉगल होईल. टॅब JavaScript सामग्री दृश्यमानता आणि शैली नियंत्रित करण्यासाठी वर्ग बदलते. तुम्ही ते टॅब, गोळ्या आणि इतर कोणत्याही-सक्षम .nav
नेव्हिगेशनसह वापरू शकता.
ही काही प्लेसहोल्डर सामग्री आहे जी प्रोफाइल टॅबशी संबंधित सामग्री आहे. दुसर्या टॅबवर क्लिक केल्याने पुढील टॅबची दृश्यमानता टॉगल होईल. टॅब JavaScript सामग्री दृश्यमानता आणि शैली नियंत्रित करण्यासाठी वर्ग बदलते. तुम्ही ते टॅब, गोळ्या आणि इतर कोणत्याही-सक्षम .nav
नेव्हिगेशनसह वापरू शकता.
ही काही प्लेसहोल्डर सामग्री आहे जी संदेश टॅबशी संबंधित सामग्री आहे. दुसर्या टॅबवर क्लिक केल्याने पुढील टॅबची दृश्यमानता टॉगल होईल. टॅब JavaScript सामग्री दृश्यमानता आणि शैली नियंत्रित करण्यासाठी वर्ग बदलते. तुम्ही ते टॅब, गोळ्या आणि इतर कोणत्याही-सक्षम .nav
नेव्हिगेशनसह वापरू शकता.
ही काही प्लेसहोल्डर सामग्री आहे जी सेटिंग्ज टॅबशी संबंधित सामग्री आहे. दुसर्या टॅबवर क्लिक केल्याने पुढील टॅबची दृश्यमानता टॉगल होईल. टॅब JavaScript सामग्री दृश्यमानता आणि शैली नियंत्रित करण्यासाठी वर्ग बदलते. तुम्ही ते टॅब, गोळ्या आणि इतर कोणत्याही-सक्षम .nav
नेव्हिगेशनसह वापरू शकता.
<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-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">...</div>
<div class="tab-pane fade" id="v-pills-profile" role="tabpanel" aria-labelledby="v-pills-profile-tab">...</div>
<div class="tab-pane fade" id="v-pills-messages" role="tabpanel" aria-labelledby="v-pills-messages-tab">...</div>
<div class="tab-pane fade" id="v-pills-settings" role="tabpanel" aria-labelledby="v-pills-settings-tab">...</div>
</div>
</div>
डेटा विशेषता वापरणे
तुम्ही कोणतेही JavaScript न लिहिता टॅब किंवा पिल नेव्हिगेशन सक्रिय करू शकता फक्त एक घटक निर्दिष्ट करून 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">...</div>
<div class="tab-pane" id="profile" role="tabpanel" aria-labelledby="profile-tab">...</div>
<div class="tab-pane" id="messages" role="tabpanel" aria-labelledby="messages-tab">...</div>
<div class="tab-pane" id="settings" role="tabpanel" aria-labelledby="settings-tab">...</div>
</div>
JavaScript द्वारे
JavaScript द्वारे टॅब करण्यायोग्य टॅब सक्षम करा (प्रत्येक टॅब स्वतंत्रपणे सक्रिय करणे आवश्यक आहे):
var triggerTabList = [].slice.call(document.querySelectorAll('#myTab button'))
triggerTabList.forEach(function (triggerEl) {
var tabTrigger = new bootstrap.Tab(triggerEl)
triggerEl.addEventListener('click', function (event) {
event.preventDefault()
tabTrigger.show()
})
})
तुम्ही वैयक्तिक टॅब अनेक प्रकारे सक्रिय करू शकता:
var triggerEl = document.querySelector('#myTab button[data-bs-target="#profile"]')
bootstrap.Tab.getInstance(triggerEl).show() // Select tab by name
var 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">...</div>
<div class="tab-pane fade" id="profile" role="tabpanel" aria-labelledby="profile-tab">...</div>
<div class="tab-pane fade" id="messages" role="tabpanel" aria-labelledby="messages-tab">...</div>
<div class="tab-pane fade" id="settings" role="tabpanel" aria-labelledby="settings-tab">...</div>
</div>
पद्धती
असिंक्रोनस पद्धती आणि संक्रमणे
सर्व API पद्धती असिंक्रोनस आहेत आणि एक संक्रमण सुरू करतात . संक्रमण सुरू होताच परंतु ते संपण्यापूर्वी ते कॉलरकडे परत जातात . याव्यतिरिक्त, संक्रमण घटकावरील पद्धत कॉलकडे दुर्लक्ष केले जाईल .
constructor
टॅब घटक आणि सामग्री कंटेनर सक्रिय करते. टॅबमध्ये एकतर एक data-bs-target
किंवा, लिंक वापरत असल्यास, href
DOM मधील कंटेनर नोडला लक्ष्य करणारी विशेषता असावी.
<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>
<div class="tab-content">
<div class="tab-pane active" id="home" role="tabpanel" aria-labelledby="home-tab">...</div>
<div class="tab-pane" id="profile" role="tabpanel" aria-labelledby="profile-tab">...</div>
<div class="tab-pane" id="messages" role="tabpanel" aria-labelledby="messages-tab">...</div>
<div class="tab-pane" id="settings" role="tabpanel" aria-labelledby="settings-tab">...</div>
</div>
<script>
var firstTabEl = document.querySelector('#myTab li:last-child button')
var firstTab = new bootstrap.Tab(firstTabEl)
firstTab.show()
</script>
दाखवा
दिलेला टॅब निवडतो आणि त्याचा संबंधित उपखंड दाखवतो. पूर्वी निवडलेला इतर कोणताही टॅब निवडलेला नसतो आणि त्याचा संबंधित उपखंड लपविला जातो. टॅब उपखंड प्रत्यक्षात दर्शविले जाण्यापूर्वी कॉलरकडे परत येते (म्हणजे shown.bs.tab
इव्हेंट होण्यापूर्वी).
var someTabTriggerEl = document.querySelector('#someTabTrigger')
var tab = new bootstrap.Tab(someTabTriggerEl)
tab.show()
विल्हेवाट लावणे
घटकाचा टॅब नष्ट करतो.
getInstance
स्टॅटिक पद्धत जी तुम्हाला डीओएम घटकाशी संबंधित टॅब उदाहरण मिळविण्यास अनुमती देते
var triggerEl = document.querySelector('#trigger')
var tab = bootstrap.Tab.getInstance(triggerEl) // Returns a Bootstrap tab instance
getOrCreateInstance
स्टॅटिक पद्धत जी तुम्हाला डीओएम घटकाशी संबंधित टॅब इन्स्टन्स मिळवू देते किंवा ते सुरू न झाल्यास नवीन तयार करू देते
var triggerEl = document.querySelector('#trigger')
var tab = bootstrap.Tab.getOrCreateInstance(triggerEl) // Returns a Bootstrap tab instance
कार्यक्रम
नवीन टॅब दाखवताना, इव्हेंट खालील क्रमाने सुरू होतात:
hide.bs.tab
(वर्तमान सक्रिय टॅबवर)show.bs.tab
(दाखवल्या जाणार्या टॅबवर)hidden.bs.tab
(मागील सक्रिय टॅबवर,hide.bs.tab
कार्यक्रमाप्रमाणेच)shown.bs.tab
(नवीन-सक्रिय नुकत्याच दाखवलेल्या टॅबवर,show.bs.tab
कार्यक्रमाप्रमाणेच)
जर कोणताही टॅब आधीपासून सक्रिय नसेल, तर hide.bs.tab
आणि hidden.bs.tab
इव्हेंट फायर केले जाणार नाहीत.
कार्यक्रमाचा प्रकार | वर्णन |
---|---|
show.bs.tab |
हा कार्यक्रम टॅब शोवर सुरू होतो, परंतु नवीन टॅब दाखवण्यापूर्वी. सक्रिय टॅब आणि मागील सक्रिय टॅब (उपलब्ध असल्यास) अनुक्रमे वापरा event.target आणि लक्ष्यित करा.event.relatedTarget |
shown.bs.tab |
टॅब दर्शविल्यानंतर हा कार्यक्रम टॅब शोवर सुरू होतो. सक्रिय टॅब आणि मागील सक्रिय टॅब (उपलब्ध असल्यास) अनुक्रमे वापरा event.target आणि लक्ष्यित करा.event.relatedTarget |
hide.bs.tab |
जेव्हा नवीन टॅब दाखवायचा असतो (आणि अशा प्रकारे मागील सक्रिय टॅब लपवायचा असतो) तेव्हा हा कार्यक्रम सुरू होतो. अनुक्रमे वर्तमान सक्रिय टॅब आणि लवकरच सक्रिय होणारा नवीन टॅब वापरा event.target आणि लक्ष्यित करा.event.relatedTarget |
hidden.bs.tab |
हा कार्यक्रम नवीन टॅब दर्शविल्यानंतर सुरू होतो (आणि अशा प्रकारे मागील सक्रिय टॅब लपविला जातो). मागील सक्रिय टॅब आणि नवीन सक्रिय टॅब अनुक्रमे वापरा event.target आणि लक्ष्यित करण्यासाठी.event.relatedTarget |
var tabEl = document.querySelector('button[data-bs-toggle="tab"]')
tabEl.addEventListener('shown.bs.tab', function (event) {
event.target // newly activated tab
event.relatedTarget // previous active tab
})