Navs এবং ট্যাব
বুটস্ট্র্যাপের অন্তর্ভুক্ত নেভিগেশন উপাদানগুলি কীভাবে ব্যবহার করবেন তার জন্য ডকুমেন্টেশন এবং উদাহরণ।
বেস নেভি
.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>
উপরের মত গুলি ব্যবহার করুন বা একটি উপাদান দিয়ে আপনার নিজের রোল করুন৷ কারণ ব্যবহার , এনএভি লিঙ্কগুলি নেভি আইটেমগুলির মতোই আচরণ করে, তবে অতিরিক্ত মার্কআপ ছাড়াই৷<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 উপাদানের শৈলী পরিবর্তন করুন । মিশ্রিত করুন এবং প্রয়োজন হিসাবে মেলে, বা আপনার নিজের তৈরি.
অনুভূমিক প্রান্তিককরণ
flexbox ইউটিলিটিগুলির সাথে আপনার nav এর অনুভূমিক প্রান্তিককরণ পরিবর্তন করুন ৷ ডিফল্টরূপে, নেভিস বাম-সারিবদ্ধ, তবে আপনি সহজেই সেগুলিকে কেন্দ্রে বা ডান প্রান্তিককৃতে পরিবর্তন করতে পারেন।
কেন্দ্রীভূত .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
ক্লাসের সাথে ট্যাব হিসাবে স্টাইল করা হয়, দেওয়া উচিত নয়role="tablist"
, role="tab"
বা role="tabpanel"
বৈশিষ্ট্যগুলি দেওয়া উচিত নয়৷ এগুলি শুধুমাত্র ডাইনামিক ট্যাবড ইন্টারফেসের জন্য উপযুক্ত, যেমনটি WAI ARIA Authoring Practices- এ বর্ণিত হয়েছে । একটি উদাহরণের জন্য এই বিভাগে ডায়নামিক ট্যাবড ইন্টারফেসের জন্য জাভাস্ক্রিপ্ট আচরণ দেখুন । ডায়নামিক aria-current
ট্যাবড ইন্টারফেসে অ্যাট্রিবিউটটি প্রয়োজনীয় নয় কারণ আমাদের জাভাস্ক্রিপ্ট aria-selected="true"
সক্রিয় ট্যাবে যোগ করে নির্বাচিত অবস্থা পরিচালনা করে।
ড্রপডাউন ব্যবহার করে
একটু অতিরিক্ত HTML এবং ড্রপডাউন জাভাস্ক্রিপ্ট প্লাগইন সহ ড্রপডাউন মেনু যোগ করুন ।
ড্রপডাউন সহ ট্যাব
<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;
জাভাস্ক্রিপ্ট আচরণ
bootstrap.js
স্থানীয় বিষয়বস্তুর ট্যাবেবল প্যান তৈরি করতে আমাদের নেভিগেশনাল ট্যাব এবং বড়িগুলিকে প্রসারিত করতে ট্যাব JavaScript প্লাগইনটি ব্যবহার করুন—এটি পৃথকভাবে বা সংকলিত ফাইলের মাধ্যমে অন্তর্ভুক্ত করুন ।
ডাইনামিক ট্যাবড ইন্টারফেস, যেমন WAI ARIA অথরিং প্র্যাকটিসসে বর্ণিত হয়েছে , সহায়ক প্রযুক্তির (যেমন স্ক্রিন রিডার) ব্যবহারকারীদের কাছে তাদের গঠন, কার্যকারিতা এবং বর্তমান অবস্থা জানাতে role="tablist"
, role="tab"
, role="tabpanel"
, এবং অতিরিক্ত বৈশিষ্ট্যের প্রয়োজন । aria-
একটি সর্বোত্তম অনুশীলন হিসাবে, আমরা <button>
ট্যাবগুলির জন্য উপাদানগুলি ব্যবহার করার পরামর্শ দিই, কারণ এগুলি এমন নিয়ন্ত্রণ যা একটি গতিশীল পরিবর্তনকে ট্রিগার করে, একটি নতুন পৃষ্ঠা বা অবস্থানে নেভিগেট করা লিঙ্কগুলির পরিবর্তে৷
মনে রাখবেন যে ডায়নামিক ট্যাবড ইন্টারফেসে ড্রপডাউন মেনু থাকা উচিত নয় , কারণ এটি ব্যবহারযোগ্যতা এবং অ্যাক্সেসযোগ্যতা উভয়ই সমস্যা সৃষ্টি করে। ব্যবহারযোগ্যতার দৃষ্টিকোণ থেকে, বর্তমানে প্রদর্শিত ট্যাবের ট্রিগার উপাদানটি অবিলম্বে দৃশ্যমান নয় (যেহেতু এটি বন্ধ ড্রপডাউন মেনুতে রয়েছে) বিভ্রান্তির কারণ হতে পারে। একটি অ্যাক্সেসিবিলিটি দৃষ্টিকোণ থেকে, বর্তমানে এই ধরণের নির্মাণকে একটি স্ট্যান্ডার্ড WAI ARIA প্যাটার্নে ম্যাপ করার কোনও বুদ্ধিমান উপায় নেই, যার অর্থ এটি সহায়ক প্রযুক্তির ব্যবহারকারীদের কাছে সহজে বোধগম্য করা যায় না।
এটি হোম ট্যাবের সাথে সম্পর্কিত কিছু স্থানধারক সামগ্রী। অন্য ট্যাবে ক্লিক করলে পরেরটির জন্য এটির দৃশ্যমানতা টগল হবে। ট্যাব জাভাস্ক্রিপ্ট বিষয়বস্তু দৃশ্যমানতা এবং স্টাইলিং নিয়ন্ত্রণ করতে ক্লাস অদলবদল করে। আপনি ট্যাব, বড়ি, এবং অন্য যেকোন- .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.
<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>
ট্যাব প্লাগইনটি পিলের সাথেও কাজ করে।
এটি হোম ট্যাবের সাথে সম্পর্কিত কিছু স্থানধারক সামগ্রী। অন্য ট্যাবে ক্লিক করলে পরেরটির জন্য এটির দৃশ্যমানতা টগল হবে। ট্যাব জাভাস্ক্রিপ্ট বিষয়বস্তু দৃশ্যমানতা এবং স্টাইলিং নিয়ন্ত্রণ করতে ক্লাস অদলবদল করে। আপনি ট্যাব, বড়ি, এবং অন্য যেকোন- .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.
<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>
এবং উল্লম্ব বড়ি সঙ্গে।
এটি হোম ট্যাবের সাথে সম্পর্কিত কিছু স্থানধারক সামগ্রী। অন্য ট্যাবে ক্লিক করলে পরেরটির জন্য এটির দৃশ্যমানতা টগল হবে। ট্যাব জাভাস্ক্রিপ্ট বিষয়বস্তু দৃশ্যমানতা এবং স্টাইলিং নিয়ন্ত্রণ করতে ক্লাস অদলবদল করে। আপনি ট্যাব, বড়ি, এবং অন্য যেকোন- .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 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-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>
ডেটা বৈশিষ্ট্য ব্যবহার করে
আপনি একটি ট্যাব বা পিল নেভিগেশন সক্রিয় করতে পারেন কোনো জাভাস্ক্রিপ্ট না লিখে শুধুমাত্র নির্দিষ্ট করে 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>
জাভাস্ক্রিপ্টের মাধ্যমে
জাভাস্ক্রিপ্টের মাধ্যমে ট্যাবযোগ্য ট্যাবগুলি সক্ষম করুন (প্রতিটি ট্যাব পৃথকভাবে সক্রিয় করা প্রয়োজন):
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
স্ট্যাটিক পদ্ধতি যা আপনাকে একটি DOM উপাদানের সাথে যুক্ত ট্যাব ইনস্ট্যান্স পেতে দেয়
var triggerEl = document.querySelector('#trigger')
var tab = bootstrap.Tab.getInstance(triggerEl) // Returns a Bootstrap tab instance
getOrCreateInstance
স্ট্যাটিক পদ্ধতি যা আপনাকে একটি DOM উপাদানের সাথে যুক্ত ট্যাব ইন্সট্যান্স পেতে দেয়, অথবা এটি আরম্ভ না হলে একটি নতুন তৈরি করতে দেয়
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
})