ड्रॉपडाउन
बूटस्ट्रॅप ड्रॉपडाउन प्लगइनसह लिंक्स आणि अधिकच्या सूची प्रदर्शित करण्यासाठी संदर्भित आच्छादन टॉगल करा.
आढावा
ड्रॉपडाउन टॉगल करण्यायोग्य आहेत, लिंक्सच्या सूची आणि बरेच काही प्रदर्शित करण्यासाठी संदर्भित आच्छादन. ते समाविष्ट केलेल्या बूटस्ट्रॅप ड्रॉपडाउन JavaScript प्लगइनसह परस्परसंवादी बनवले आहेत. ते क्लिक करून टॉगल केले जातात, फिरवून नाही; हा मुद्दाम डिझाइन निर्णय आहे .
ड्रॉपडाउन एका तृतीय पक्ष लायब्ररीवर तयार केले जातात, पॉपर , जे डायनॅमिक पोझिशनिंग आणि व्ह्यूपोर्ट शोध प्रदान करते. Bootstrap च्या JavaScript आधी popper.min.js समाविष्ट केल्याची खात्री करा किंवा वापरा bootstrap.bundle.min.js
/ bootstrap.bundle.js
ज्यामध्ये Popper आहे. डायनॅमिक पोझिशनिंग आवश्यक नसले तरीही पॉपरचा वापर नेव्हबारमध्ये ड्रॉपडाउन ठेवण्यासाठी केला जात नाही.
प्रवेशयोग्यता
WAI ARIA मानक वास्तविक role="menu"
विजेट परिभाषित करते , परंतु हे ऍप्लिकेशन सारख्या मेनूसाठी विशिष्ट आहे जे क्रिया किंवा कार्ये ट्रिगर करतात. ARIA मेनूमध्ये फक्त मेनू आयटम, चेकबॉक्स मेनू आयटम, रेडिओ बटण मेनू आयटम, रेडिओ बटण गट आणि उप-मेनू असू शकतात.
बूटस्ट्रॅपचे ड्रॉपडाउन, दुसरीकडे, जेनेरिक आणि विविध परिस्थिती आणि मार्कअप संरचनांना लागू करण्यासाठी डिझाइन केलेले आहेत. उदाहरणार्थ, ड्रॉपडाउन तयार करणे शक्य आहे ज्यात अतिरिक्त इनपुट आणि फॉर्म नियंत्रणे आहेत, जसे की शोध फील्ड किंवा लॉगिन फॉर्म. या कारणास्तव, बूटस्ट्रॅप खर्या एआरआयए मेनूसाठी आवश्यक असलेल्या कोणत्याही गुणधर्मांची अपेक्षा role
करत नाही (किंवा आपोआप जोडत नाही). लेखकांना या अधिक विशिष्ट गुणधर्मांचा स्वतः समावेश करावा लागेल.aria-
तथापि, बूटस्ट्रॅप बहुतेक मानक कीबोर्ड मेनू परस्परसंवादासाठी अंगभूत समर्थन जोडते, जसे की .dropdown-item
कर्सर की वापरून वैयक्तिक घटकांमधून जाण्याची आणि कीसह मेनू बंद करण्याची क्षमता ESC.
उदाहरणे
ड्रॉपडाउनचे टॉगल (तुमचे बटण किंवा लिंक) आणि ड्रॉपडाउन मेनूमध्ये गुंडाळा .dropdown
, किंवा घोषित करणारा दुसरा घटक position: relative;
. तुमच्या संभाव्य गरजा चांगल्या प्रकारे बसवण्यासाठी ड्रॉपडाउन्स <a>
किंवा घटकांमधून ट्रिगर केले जाऊ शकते . <button>
येथे दर्शविलेली उदाहरणे योग्य तेथे सिमेंटिक <ul>
घटक वापरतात, परंतु सानुकूल मार्कअप समर्थित आहे.
सिंगल बटण
कोणतेही एकल .btn
काही मार्कअप बदलांसह ड्रॉपडाउन टॉगलमध्ये बदलले जाऊ शकते. <button>
आपण त्यांना दोन्ही घटकांसह कसे कार्य करू शकता ते येथे आहे :
<div class="dropdown">
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton1" data-bs-toggle="dropdown" aria-expanded="false">
Dropdown button
</button>
<ul class="dropdown-menu" aria-labelledby="dropdownMenuButton1">
<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>
</ul>
</div>
आणि <a>
घटकांसह:
<div class="dropdown">
<a class="btn btn-secondary dropdown-toggle" href="#" role="button" id="dropdownMenuLink" data-bs-toggle="dropdown" aria-expanded="false">
Dropdown link
</a>
<ul class="dropdown-menu" aria-labelledby="dropdownMenuLink">
<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>
</ul>
</div>
सर्वोत्कृष्ट भाग म्हणजे तुम्ही हे कोणत्याही बटण प्रकारासह देखील करू शकता:
<!-- Example single danger button -->
<div class="btn-group">
<button type="button" class="btn btn-danger dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
Action
</button>
<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>
</div>
स्प्लिट बटण
त्याचप्रमाणे, स्प्लिट बटण ड्रॉपडाउन तयार करा ज्यात अक्षरशः सिंगल बटण ड्रॉपडाउन सारख्याच मार्कअपसह, परंतु .dropdown-toggle-split
ड्रॉपडाउन कॅरेटभोवती योग्य अंतर ठेवण्यासाठी जोडणे.
padding
आम्ही कॅरेटच्या दोन्ही बाजूचे क्षैतिज 25% कमी करण्यासाठी आणि margin-left
नियमित बटण ड्रॉपडाउनसाठी जोडलेले काढून टाकण्यासाठी हा अतिरिक्त वर्ग वापरतो . हे अतिरिक्त बदल कॅरेटला स्प्लिट बटणाच्या मध्यभागी ठेवतात आणि मुख्य बटणाच्या पुढे अधिक योग्य आकाराचे हिट क्षेत्र प्रदान करतात.
<!-- Example split danger button -->
<div class="btn-group">
<button type="button" class="btn btn-danger">Action</button>
<button type="button" class="btn btn-danger dropdown-toggle dropdown-toggle-split" data-bs-toggle="dropdown" aria-expanded="false">
<span class="visually-hidden">Toggle Dropdown</span>
</button>
<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>
</div>
आकारमान
डिफॉल्ट आणि स्प्लिट ड्रॉपडाउन बटणांसह सर्व आकारांच्या बटणांसह बटण ड्रॉपडाउन कार्य करतात.
<!-- Large button groups (default and split) -->
<div class="btn-group">
<button class="btn btn-secondary btn-lg dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">
Large button
</button>
<ul class="dropdown-menu">
...
</ul>
</div>
<div class="btn-group">
<button class="btn btn-secondary btn-lg" type="button">
Large split button
</button>
<button type="button" class="btn btn-lg btn-secondary dropdown-toggle dropdown-toggle-split" data-bs-toggle="dropdown" aria-expanded="false">
<span class="visually-hidden">Toggle Dropdown</span>
</button>
<ul class="dropdown-menu">
...
</ul>
</div>
<div class="btn-group">
<button class="btn btn-secondary btn-sm dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">
Small button
</button>
<ul class="dropdown-menu">
...
</ul>
</div>
<div class="btn-group">
<button class="btn btn-secondary btn-sm" type="button">
Small split button
</button>
<button type="button" class="btn btn-sm btn-secondary dropdown-toggle dropdown-toggle-split" data-bs-toggle="dropdown" aria-expanded="false">
<span class="visually-hidden">Toggle Dropdown</span>
</button>
<ul class="dropdown-menu">
...
</ul>
</div>
गडद ड्रॉपडाउन
.dropdown-menu-dark
विद्यमान वर जोडून गडद नॅव्हबार किंवा सानुकूल शैलीशी जुळण्यासाठी गडद ड्रॉपडाउनची निवड करा .dropdown-menu
. ड्रॉपडाउन आयटममध्ये कोणतेही बदल आवश्यक नाहीत.
<div class="dropdown">
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton2" data-bs-toggle="dropdown" aria-expanded="false">
Dropdown button
</button>
<ul class="dropdown-menu dropdown-menu-dark" aria-labelledby="dropdownMenuButton2">
<li><a class="dropdown-item active" 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>
</div>
आणि नॅव्हबारमध्ये वापरण्यासाठी टाकणे:
<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
<div class="container-fluid">
<a class="navbar-brand" href="#">Navbar</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNavDarkDropdown" aria-controls="navbarNavDarkDropdown" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNavDarkDropdown">
<ul class="navbar-nav">
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" id="navbarDarkDropdownMenuLink" role="button" data-bs-toggle="dropdown" aria-expanded="false">
Dropdown
</a>
<ul class="dropdown-menu dropdown-menu-dark" aria-labelledby="navbarDarkDropdownMenuLink">
<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>
</ul>
</li>
</ul>
</div>
</div>
</nav>
दिशानिर्देश
RTL
आरटीएलमध्ये बूटस्ट्रॅप वापरताना दिशानिर्देश मिरर केले जातात, याचा अर्थ .dropstart
उजव्या बाजूला दिसेल.
ड्रॉपअप
.dropup
मूळ घटक जोडून घटकांच्या वरील ड्रॉपडाउन मेनू ट्रिगर करा.
<!-- Default dropup button -->
<div class="btn-group dropup">
<button type="button" class="btn btn-secondary dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
Dropup
</button>
<ul class="dropdown-menu">
<!-- Dropdown menu links -->
</ul>
</div>
<!-- Split dropup button -->
<div class="btn-group dropup">
<button type="button" class="btn btn-secondary">
Split dropup
</button>
<button type="button" class="btn btn-secondary dropdown-toggle dropdown-toggle-split" data-bs-toggle="dropdown" aria-expanded="false">
<span class="visually-hidden">Toggle Dropdown</span>
</button>
<ul class="dropdown-menu">
<!-- Dropdown menu links -->
</ul>
</div>
ड्रॉपराइट
.dropend
मूळ घटक जोडून घटकांच्या उजवीकडे ड्रॉपडाउन मेनू ट्रिगर करा.
<!-- Default dropend button -->
<div class="btn-group dropend">
<button type="button" class="btn btn-secondary dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
Dropright
</button>
<ul class="dropdown-menu">
<!-- Dropdown menu links -->
</ul>
</div>
<!-- Split dropend button -->
<div class="btn-group dropend">
<button type="button" class="btn btn-secondary">
Split dropend
</button>
<button type="button" class="btn btn-secondary dropdown-toggle dropdown-toggle-split" data-bs-toggle="dropdown" aria-expanded="false">
<span class="visually-hidden">Toggle Dropright</span>
</button>
<ul class="dropdown-menu">
<!-- Dropdown menu links -->
</ul>
</div>
थेंब
.dropstart
मूल घटक जोडून घटकांच्या डावीकडे ड्रॉपडाउन मेनू ट्रिगर करा.
<!-- Default dropstart button -->
<div class="btn-group dropstart">
<button type="button" class="btn btn-secondary dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
Dropstart
</button>
<ul class="dropdown-menu">
<!-- Dropdown menu links -->
</ul>
</div>
<!-- Split dropstart button -->
<div class="btn-group">
<div class="btn-group dropstart" role="group">
<button type="button" class="btn btn-secondary dropdown-toggle dropdown-toggle-split" data-bs-toggle="dropdown" aria-expanded="false">
<span class="visually-hidden">Toggle Dropstart</span>
</button>
<ul class="dropdown-menu">
<!-- Dropdown menu links -->
</ul>
</div>
<button type="button" class="btn btn-secondary">
Split dropstart
</button>
</div>
मेनू आयटम
<a>
आपण ड्रॉपडाउन आयटम म्हणून किंवा <button>
घटक वापरू शकता .
<div class="dropdown">
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenu2" data-bs-toggle="dropdown" aria-expanded="false">
Dropdown
</button>
<ul class="dropdown-menu" aria-labelledby="dropdownMenu2">
<li><button class="dropdown-item" type="button">Action</button></li>
<li><button class="dropdown-item" type="button">Another action</button></li>
<li><button class="dropdown-item" type="button">Something else here</button></li>
</ul>
</div>
तुम्ही सह गैर-परस्परसंवादी ड्रॉपडाउन आयटम देखील तयार करू शकता .dropdown-item-text
. सानुकूल CSS किंवा मजकूर युटिलिटिजसह पुढे स्टाईल करण्यास मोकळ्या मनाने.
<ul class="dropdown-menu">
<li><span class="dropdown-item-text">Dropdown item text</span></li>
<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>
</ul>
सक्रिय
.active
ड्रॉपडाउनमधील आयटम सक्रिय म्हणून स्टाईल करण्यासाठी त्यांना जोडा . सक्रिय स्थिती सहाय्यक तंत्रज्ञानापर्यंत पोहोचवण्यासाठी, विशेषता वापरा — वर्तमान पृष्ठासाठी मूल्य aria-current
वापरून किंवा सेटमधील वर्तमान आयटमसाठी.page
true
<ul class="dropdown-menu">
<li><a class="dropdown-item" href="#">Regular link</a></li>
<li><a class="dropdown-item active" href="#" aria-current="true">Active link</a></li>
<li><a class="dropdown-item" href="#">Another link</a></li>
</ul>
अक्षम
.disabled
ड्रॉपडाउनमधील आयटम त्यांना अक्षम म्हणून स्टाईल करण्यासाठी जोडा .
<ul class="dropdown-menu">
<li><a class="dropdown-item" href="#">Regular link</a></li>
<li><a class="dropdown-item disabled" href="#" tabindex="-1" aria-disabled="true">Disabled link</a></li>
<li><a class="dropdown-item" href="#">Another link</a></li>
</ul>
मेनू संरेखन
डीफॉल्टनुसार, ड्रॉपडाउन मेनू स्वयंचलितपणे 100% शीर्षस्थानी आणि त्याच्या पालकाच्या डाव्या बाजूला स्थित असतो. तुम्ही हे दिशात्मक .drop*
वर्गांसह बदलू शकता, परंतु तुम्ही त्यांना अतिरिक्त सुधारक वर्गांसह नियंत्रित देखील करू शकता.
ड्रॉपडाउन मेनू उजवीकडे संरेखित .dropdown-menu-end
करण्यासाठी a मध्ये जोडा . .dropdown-menu
आरटीएलमध्ये बूटस्ट्रॅप वापरताना दिशानिर्देश मिरर केले जातात, याचा अर्थ .dropdown-menu-end
डाव्या बाजूला दिसेल.
<div class="btn-group">
<button type="button" class="btn btn-secondary dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
Right-aligned menu example
</button>
<ul class="dropdown-menu dropdown-menu-end">
<li><button class="dropdown-item" type="button">Action</button></li>
<li><button class="dropdown-item" type="button">Another action</button></li>
<li><button class="dropdown-item" type="button">Something else here</button></li>
</ul>
</div>
प्रतिसादात्मक संरेखन
तुम्हाला रिस्पॉन्सिव्ह अलाइनमेंट वापरायचे असल्यास, विशेषता जोडून डायनॅमिक पोझिशनिंग अक्षम data-bs-display="static"
करा आणि रिस्पॉन्सिव्ह व्हेरिएशन क्लासेस वापरा.
दिलेल्या ब्रेकपॉईंटसह ड्रॉपडाउन मेनू उजवीकडे संरेखित करण्यासाठी किंवा मोठ्या, जोडा .dropdown-menu{-sm|-md|-lg|-xl|-xxl}-end
.
<div class="btn-group">
<button type="button" class="btn btn-secondary dropdown-toggle" data-bs-toggle="dropdown" data-bs-display="static" aria-expanded="false">
Left-aligned but right aligned when large screen
</button>
<ul class="dropdown-menu dropdown-menu-lg-end">
<li><button class="dropdown-item" type="button">Action</button></li>
<li><button class="dropdown-item" type="button">Another action</button></li>
<li><button class="dropdown-item" type="button">Something else here</button></li>
</ul>
</div>
दिलेल्या ब्रेकपॉईंटसह ड्रॉपडाउन मेनू डावीकडे संरेखित करण्यासाठी किंवा मोठ्या, जोडा .dropdown-menu-end
आणि .dropdown-menu{-sm|-md|-lg|-xl|-xxl}-start
.
<div class="btn-group">
<button type="button" class="btn btn-secondary dropdown-toggle" data-bs-toggle="dropdown" data-bs-display="static" aria-expanded="false">
Right-aligned but left aligned when large screen
</button>
<ul class="dropdown-menu dropdown-menu-end dropdown-menu-lg-start">
<li><button class="dropdown-item" type="button">Action</button></li>
<li><button class="dropdown-item" type="button">Another action</button></li>
<li><button class="dropdown-item" type="button">Something else here</button></li>
</ul>
</div>
data-bs-display="static"
लक्षात ठेवा की तुम्हाला navbars मधील ड्रॉपडाउन बटणांमध्ये विशेषता जोडण्याची आवश्यकता नाही , कारण popper नॅव्हबारमध्ये वापरले जात नाही.
संरेखन पर्याय
वर दर्शविलेल्या बहुतेक पर्यायांचा वापर करून, येथे एकाच ठिकाणी विविध ड्रॉपडाउन अलाइनमेंट पर्यायांचा एक छोटासा किचन सिंक डेमो आहे.
<div class="btn-group">
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-bs-toggle="dropdown" aria-expanded="false">
Dropdown
</button>
<ul class="dropdown-menu" aria-labelledby="dropdownMenuButton">
<li><a class="dropdown-item" href="#">Menu item</a></li>
<li><a class="dropdown-item" href="#">Menu item</a></li>
<li><a class="dropdown-item" href="#">Menu item</a></li>
</ul>
</div>
<div class="btn-group">
<button type="button" class="btn btn-secondary dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
Right-aligned menu
</button>
<ul class="dropdown-menu dropdown-menu-end">
<li><a class="dropdown-item" href="#">Menu item</a></li>
<li><a class="dropdown-item" href="#">Menu item</a></li>
<li><a class="dropdown-item" href="#">Menu item</a></li>
</ul>
</div>
<div class="btn-group">
<button type="button" class="btn btn-secondary dropdown-toggle" data-bs-toggle="dropdown" data-bs-display="static" aria-expanded="false">
Left-aligned, right-aligned lg
</button>
<ul class="dropdown-menu dropdown-menu-lg-end">
<li><a class="dropdown-item" href="#">Menu item</a></li>
<li><a class="dropdown-item" href="#">Menu item</a></li>
<li><a class="dropdown-item" href="#">Menu item</a></li>
</ul>
</div>
<div class="btn-group">
<button type="button" class="btn btn-secondary dropdown-toggle" data-bs-toggle="dropdown" data-bs-display="static" aria-expanded="false">
Right-aligned, left-aligned lg
</button>
<ul class="dropdown-menu dropdown-menu-end dropdown-menu-lg-start">
<li><a class="dropdown-item" href="#">Menu item</a></li>
<li><a class="dropdown-item" href="#">Menu item</a></li>
<li><a class="dropdown-item" href="#">Menu item</a></li>
</ul>
</div>
<div class="btn-group dropstart">
<button type="button" class="btn btn-secondary dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
Dropstart
</button>
<ul class="dropdown-menu">
<li><a class="dropdown-item" href="#">Menu item</a></li>
<li><a class="dropdown-item" href="#">Menu item</a></li>
<li><a class="dropdown-item" href="#">Menu item</a></li>
</ul>
</div>
<div class="btn-group dropend">
<button type="button" class="btn btn-secondary dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
Dropend
</button>
<ul class="dropdown-menu">
<li><a class="dropdown-item" href="#">Menu item</a></li>
<li><a class="dropdown-item" href="#">Menu item</a></li>
<li><a class="dropdown-item" href="#">Menu item</a></li>
</ul>
</div>
<div class="btn-group dropup">
<button type="button" class="btn btn-secondary dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
Dropup
</button>
<ul class="dropdown-menu">
<li><a class="dropdown-item" href="#">Menu item</a></li>
<li><a class="dropdown-item" href="#">Menu item</a></li>
<li><a class="dropdown-item" href="#">Menu item</a></li>
</ul>
</div>
मेनू सामग्री
शीर्षलेख
कोणत्याही ड्रॉपडाउन मेनूमधील क्रियांच्या विभागांना लेबल करण्यासाठी शीर्षलेख जोडा.
<ul class="dropdown-menu">
<li><h6 class="dropdown-header">Dropdown header</h6></li>
<li><a class="dropdown-item" href="#">Action</a></li>
<li><a class="dropdown-item" href="#">Another action</a></li>
</ul>
दुभाजक
डिव्हायडरसह संबंधित मेनू आयटमचे वेगळे गट.
<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>
मजकूर
मजकूरासह ड्रॉपडाउन मेनूमध्ये कोणताही फ्रीफॉर्म मजकूर ठेवा आणि स्पेसिंग युटिलिटी वापरा . लक्षात ठेवा की मेनू रुंदी मर्यादित करण्यासाठी तुम्हाला अतिरिक्त आकारमान शैलींची आवश्यकता असेल.
<div class="dropdown-menu p-4 text-muted" style="max-width: 200px;">
<p>
Some example text that's free-flowing within the dropdown menu.
</p>
<p class="mb-0">
And this is more example text.
</p>
</div>
फॉर्म
ड्रॉपडाउन मेनूमध्ये एक फॉर्म ठेवा किंवा त्यास ड्रॉपडाउन मेनूमध्ये बनवा आणि आपल्याला आवश्यक असलेली नकारात्मक जागा देण्यासाठी मार्जिन किंवा पॅडिंग उपयुक्तता वापरा.
<div class="dropdown-menu">
<form class="px-4 py-3">
<div class="mb-3">
<label for="exampleDropdownFormEmail1" class="form-label">Email address</label>
<input type="email" class="form-control" id="exampleDropdownFormEmail1" placeholder="[email protected]">
</div>
<div class="mb-3">
<label for="exampleDropdownFormPassword1" class="form-label">Password</label>
<input type="password" class="form-control" id="exampleDropdownFormPassword1" placeholder="Password">
</div>
<div class="mb-3">
<div class="form-check">
<input type="checkbox" class="form-check-input" id="dropdownCheck">
<label class="form-check-label" for="dropdownCheck">
Remember me
</label>
</div>
</div>
<button type="submit" class="btn btn-primary">Sign in</button>
</form>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="#">New around here? Sign up</a>
<a class="dropdown-item" href="#">Forgot password?</a>
</div>
<form class="dropdown-menu p-4">
<div class="mb-3">
<label for="exampleDropdownFormEmail2" class="form-label">Email address</label>
<input type="email" class="form-control" id="exampleDropdownFormEmail2" placeholder="[email protected]">
</div>
<div class="mb-3">
<label for="exampleDropdownFormPassword2" class="form-label">Password</label>
<input type="password" class="form-control" id="exampleDropdownFormPassword2" placeholder="Password">
</div>
<div class="mb-3">
<div class="form-check">
<input type="checkbox" class="form-check-input" id="dropdownCheck2">
<label class="form-check-label" for="dropdownCheck2">
Remember me
</label>
</div>
</div>
<button type="submit" class="btn btn-primary">Sign in</button>
</form>
ड्रॉपडाउन पर्याय
ड्रॉपडाउनचे स्थान वापरा data-bs-offset
किंवा बदला.data-bs-reference
<div class="d-flex">
<div class="dropdown me-1">
<button type="button" class="btn btn-secondary dropdown-toggle" id="dropdownMenuOffset" data-bs-toggle="dropdown" aria-expanded="false" data-bs-offset="10,20">
Offset
</button>
<ul class="dropdown-menu" aria-labelledby="dropdownMenuOffset">
<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>
</ul>
</div>
<div class="btn-group">
<button type="button" class="btn btn-secondary">Reference</button>
<button type="button" class="btn btn-secondary dropdown-toggle dropdown-toggle-split" id="dropdownMenuReference" data-bs-toggle="dropdown" aria-expanded="false" data-bs-reference="parent">
<span class="visually-hidden">Toggle Dropdown</span>
</button>
<ul class="dropdown-menu" aria-labelledby="dropdownMenuReference">
<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>
</div>
</div>
स्वयं बंद वर्तन
डीफॉल्टनुसार, ड्रॉपडाउन मेनूच्या आत किंवा बाहेर क्लिक केल्यावर ड्रॉपडाउन मेनू बंद केला जातो. autoClose
ड्रॉपडाउनचे हे वर्तन बदलण्यासाठी तुम्ही पर्याय वापरू शकता .
<div class="btn-group">
<button class="btn btn-secondary dropdown-toggle" type="button" id="defaultDropdown" data-bs-toggle="dropdown" data-bs-auto-close="true" aria-expanded="false">
Default dropdown
</button>
<ul class="dropdown-menu" aria-labelledby="defaultDropdown">
<li><a class="dropdown-item" href="#">Menu item</a></li>
<li><a class="dropdown-item" href="#">Menu item</a></li>
<li><a class="dropdown-item" href="#">Menu item</a></li>
</ul>
</div>
<div class="btn-group">
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuClickableOutside" data-bs-toggle="dropdown" data-bs-auto-close="inside" aria-expanded="false">
Clickable outside
</button>
<ul class="dropdown-menu" aria-labelledby="dropdownMenuClickableOutside">
<li><a class="dropdown-item" href="#">Menu item</a></li>
<li><a class="dropdown-item" href="#">Menu item</a></li>
<li><a class="dropdown-item" href="#">Menu item</a></li>
</ul>
</div>
<div class="btn-group">
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuClickableInside" data-bs-toggle="dropdown" data-bs-auto-close="outside" aria-expanded="false">
Clickable inside
</button>
<ul class="dropdown-menu" aria-labelledby="dropdownMenuClickableInside">
<li><a class="dropdown-item" href="#">Menu item</a></li>
<li><a class="dropdown-item" href="#">Menu item</a></li>
<li><a class="dropdown-item" href="#">Menu item</a></li>
</ul>
</div>
<div class="btn-group">
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuClickable" data-bs-toggle="dropdown" data-bs-auto-close="false" aria-expanded="false">
Manual close
</button>
<ul class="dropdown-menu" aria-labelledby="dropdownMenuClickable">
<li><a class="dropdown-item" href="#">Menu item</a></li>
<li><a class="dropdown-item" href="#">Menu item</a></li>
<li><a class="dropdown-item" href="#">Menu item</a></li>
</ul>
</div>
सस
चल
सर्व ड्रॉपडाउनसाठी चल:
$dropdown-min-width: 10rem;
$dropdown-padding-x: 0;
$dropdown-padding-y: .5rem;
$dropdown-spacer: .125rem;
$dropdown-font-size: $font-size-base;
$dropdown-color: $body-color;
$dropdown-bg: $white;
$dropdown-border-color: rgba($black, .15);
$dropdown-border-radius: $border-radius;
$dropdown-border-width: $border-width;
$dropdown-inner-border-radius: subtract($dropdown-border-radius, $dropdown-border-width);
$dropdown-divider-bg: $dropdown-border-color;
$dropdown-divider-margin-y: $spacer * .5;
$dropdown-box-shadow: $box-shadow;
$dropdown-link-color: $gray-900;
$dropdown-link-hover-color: shade-color($gray-900, 10%);
$dropdown-link-hover-bg: $gray-200;
$dropdown-link-active-color: $component-active-color;
$dropdown-link-active-bg: $component-active-bg;
$dropdown-link-disabled-color: $gray-500;
$dropdown-item-padding-y: $spacer * .25;
$dropdown-item-padding-x: $spacer;
$dropdown-header-color: $gray-600;
$dropdown-header-padding: $dropdown-padding-y $dropdown-item-padding-x;
गडद ड्रॉपडाउनसाठी चल :
$dropdown-dark-color: $gray-300;
$dropdown-dark-bg: $gray-800;
$dropdown-dark-border-color: $dropdown-border-color;
$dropdown-dark-divider-bg: $dropdown-divider-bg;
$dropdown-dark-box-shadow: null;
$dropdown-dark-link-color: $dropdown-dark-color;
$dropdown-dark-link-hover-color: $white;
$dropdown-dark-link-hover-bg: rgba($white, .15);
$dropdown-dark-link-active-color: $dropdown-link-active-color;
$dropdown-dark-link-active-bg: $dropdown-link-active-bg;
$dropdown-dark-link-disabled-color: $gray-500;
$dropdown-dark-header-color: $gray-500;
CSS-आधारित कॅरेट्ससाठी व्हेरिएबल्स जे ड्रॉपडाउनची संवादात्मकता दर्शवतात:
$caret-width: .3em;
$caret-vertical-align: $caret-width * .85;
$caret-spacing: $caret-width * .85;
मिक्सन्स
मिक्सिन्सचा वापर CSS-आधारित कॅरेट्स व्युत्पन्न करण्यासाठी केला जातो आणि मध्ये आढळू शकतो scss/mixins/_caret.scss
.
@mixin caret-down {
border-top: $caret-width solid;
border-right: $caret-width solid transparent;
border-bottom: 0;
border-left: $caret-width solid transparent;
}
@mixin caret-up {
border-top: 0;
border-right: $caret-width solid transparent;
border-bottom: $caret-width solid;
border-left: $caret-width solid transparent;
}
@mixin caret-end {
border-top: $caret-width solid transparent;
border-right: 0;
border-bottom: $caret-width solid transparent;
border-left: $caret-width solid;
}
@mixin caret-start {
border-top: $caret-width solid transparent;
border-right: $caret-width solid;
border-bottom: $caret-width solid transparent;
}
@mixin caret($direction: down) {
@if $enable-caret {
&::after {
display: inline-block;
margin-left: $caret-spacing;
vertical-align: $caret-vertical-align;
content: "";
@if $direction == down {
@include caret-down();
} @else if $direction == up {
@include caret-up();
} @else if $direction == end {
@include caret-end();
}
}
@if $direction == start {
&::after {
display: none;
}
&::before {
display: inline-block;
margin-right: $caret-spacing;
vertical-align: $caret-vertical-align;
content: "";
@include caret-start();
}
}
&:empty::after {
margin-left: 0;
}
}
}
वापर
डेटा विशेषता किंवा JavaScript द्वारे, ड्रॉपडाउन प्लगइन लपलेली सामग्री (ड्रॉपडाउन मेनू) पॅरेंटवरील .show
वर्ग टॉगल करून टॉगल करते .dropdown-menu
. data-bs-toggle="dropdown"
अॅप्लिकेशन स्तरावर ड्रॉपडाउन मेनू बंद करण्यासाठी विशेषता अवलंबून असते, म्हणून ती नेहमी वापरणे चांगली कल्पना आहे .
mouseover
तात्काळ मुलांसाठी रिक्त हँडलर
जोडले जातात. iOS च्या इव्हेंट डेलिगेशन मधील क्विर्कवर<body>
कार्य करण्यासाठी हे मान्यपणे कुरूप हॅक आवश्यक आहे
, जे अन्यथा ड्रॉपडाउन बंद करणार्या कोडला ट्रिगर करण्यापासून ड्रॉपडाउनच्या बाहेर कुठेही टॅप करण्यास प्रतिबंधित करेल. ड्रॉपडाउन बंद केल्यावर, हे अतिरिक्त रिकामे
हँडलर काढले जातात.
mouseover
डेटा विशेषतांद्वारे
data-bs-toggle="dropdown"
ड्रॉपडाउन टॉगल करण्यासाठी लिंक किंवा बटणावर जोडा .
<div class="dropdown">
<button id="dLabel" type="button" data-bs-toggle="dropdown" aria-expanded="false">
Dropdown trigger
</button>
<ul class="dropdown-menu" aria-labelledby="dLabel">
...
</ul>
</div>
JavaScript द्वारे
JavaScript द्वारे ड्रॉपडाउन कॉल करा:
var dropdownElementList = [].slice.call(document.querySelectorAll('.dropdown-toggle'))
var dropdownList = dropdownElementList.map(function (dropdownToggleEl) {
return new bootstrap.Dropdown(dropdownToggleEl)
})
data-bs-toggle="dropdown"
अजूनही आवश्यक आहे
तुम्ही तुमच्या ड्रॉपडाउनला JavaScript द्वारे कॉल करत असलात किंवा त्याऐवजी डेटा-एपीआय वापरत असलात तरीही, data-bs-toggle="dropdown"
ड्रॉपडाउनच्या ट्रिगर घटकावर नेहमी उपस्थित असणे आवश्यक आहे.
पर्याय
डेटा विशेषता किंवा JavaScript द्वारे पर्याय पास केले जाऊ शकतात. डेटा विशेषतांसाठी, पर्यायाचे नाव , मध्ये data-bs-
प्रमाणे जोडा data-bs-offset=""
. डेटा विशेषतांद्वारे पर्याय पास करताना पर्याय नावाचा केस प्रकार CamelCase वरून कबाब-केसमध्ये बदलण्याची खात्री करा. उदाहरणार्थ, वापरण्याऐवजी data-bs-autoClose="false"
, वापरा data-bs-auto-close="false"
.
नाव | प्रकार | डीफॉल्ट | वर्णन |
---|---|---|---|
boundary |
स्ट्रिंग | घटक | 'clippingParents' |
ड्रॉपडाउन मेनूची ओव्हरफ्लो मर्यादा सीमा (केवळ पॉपरच्या प्रतिबंधक ओव्हरफ्लो सुधारकाला लागू होते). डीफॉल्टनुसार ते 'clippingParents' HTMLElement संदर्भ स्वीकारू शकते (केवळ JavaScript द्वारे). अधिक माहितीसाठी Popper's detectOverflow डॉक्स पहा . |
reference |
स्ट्रिंग | घटक | वस्तू | 'toggle' |
ड्रॉपडाउन मेनूचा संदर्भ घटक. 'toggle' , 'parent' , HTMLElement संदर्भ किंवा प्रदान करणारी ऑब्जेक्टची मूल्ये स्वीकारते getBoundingClientRect . अधिक माहितीसाठी पॉपरचे कन्स्ट्रक्टर डॉक्स आणि आभासी घटक डॉक्स पहा . |
display |
स्ट्रिंग | 'dynamic' |
डीफॉल्टनुसार, डायनॅमिक पोझिशनिंगसाठी आम्ही पॉपर वापरतो. यासह अक्षम करा static . |
offset |
अॅरे | स्ट्रिंग | कार्य | [0, 2] |
त्याच्या लक्ष्याशी संबंधित ड्रॉपडाउनचा ऑफसेट. तुम्ही स्वल्पविरामाने विभक्त मूल्यांसह डेटा विशेषतांमध्ये स्ट्रिंग पास करू शकता जसे की: जेव्हा ऑफसेट निर्धारित करण्यासाठी फंक्शन वापरले जाते, तेव्हा त्याला पॉपर प्लेसमेंट, संदर्भ असलेल्या ऑब्जेक्टसह कॉल केले जाते आणि पॉपर त्याचा पहिला युक्तिवाद म्हणून रेक्ट करतो. ट्रिगरिंग घटक DOM नोड दुसरा युक्तिवाद म्हणून पास केला जातो. फंक्शनने दोन संख्यांसह अॅरे परत करणे आवश्यक आहे: . अधिक माहितीसाठी पॉपर ऑफसेट डॉक्स पहा . |
autoClose |
बुलियन | स्ट्रिंग | true |
ड्रॉपडाउनचे स्वयं बंद वर्तन कॉन्फिगर करा:
|
popperConfig |
शून्य | ऑब्जेक्ट | कार्य | null |
बूटस्ट्रॅपचे डीफॉल्ट पॉपर कॉन्फिगरेशन बदलण्यासाठी, पॉपरचे कॉन्फिगरेशन पहा . जेव्हा फंक्शन पॉपर कॉन्फिगरेशन तयार करण्यासाठी वापरले जाते, तेव्हा ते बूटस्ट्रॅपचे डीफॉल्ट पॉपर कॉन्फिगरेशन असलेल्या ऑब्जेक्टसह कॉल केले जाते. हे तुम्हाला तुमच्या स्वतःच्या कॉन्फिगरेशनसह डीफॉल्ट वापरण्यास आणि विलीन करण्यात मदत करते. फंक्शनने पॉपरसाठी कॉन्फिगरेशन ऑब्जेक्ट परत करणे आवश्यक आहे. |
सह फंक्शन वापरणेpopperConfig
var dropdown = new bootstrap.Dropdown(element, {
popperConfig: function (defaultBsPopperConfig) {
// var newPopperConfig = {...}
// use defaultBsPopperConfig if needed...
// return newPopperConfig
}
})
पद्धती
पद्धत | वर्णन |
---|---|
toggle |
दिलेल्या नॅव्हबार किंवा टॅब केलेल्या नेव्हिगेशनचा ड्रॉपडाउन मेनू टॉगल करते. |
show |
दिलेल्या नॅव्हबार किंवा टॅब केलेल्या नेव्हिगेशनचा ड्रॉपडाउन मेनू दाखवतो. |
hide |
दिलेल्या नॅव्हबार किंवा टॅब केलेल्या नेव्हिगेशनचा ड्रॉपडाउन मेनू लपवतो. |
update |
घटकाच्या ड्रॉपडाउनची स्थिती अपडेट करते. |
dispose |
घटकाचे ड्रॉपडाउन नष्ट करते. (DOM घटकावरील संचयित डेटा काढून टाकते) |
getInstance |
स्टॅटिक पद्धत जी तुम्हाला डीओएम घटकाशी संबंधित ड्रॉपडाउन उदाहरण मिळविण्याची परवानगी देते, तुम्ही ते याप्रमाणे वापरू शकता:bootstrap.Dropdown.getInstance(element) |
getOrCreateInstance |
स्टॅटिक पद्धत जी डीओएम घटकाशी संबंधित ड्रॉपडाउन उदाहरण देते किंवा प्रारंभ न केल्यास नवीन तयार करते. आपण ते याप्रमाणे वापरू शकता:bootstrap.Dropdown.getOrCreateInstance(element) |
कार्यक्रम
सर्व ड्रॉपडाउन इव्हेंट टॉगलिंग घटकावर फायर केले जातात आणि नंतर बबल केले जातात. .dropdown-menu
त्यामुळे तुम्ही 'पॅरेंट एलि���ेंट'वर इव्हेंट श्रोते देखील जोडू शकता . hide.bs.dropdown
आणि hidden.bs.dropdown
इव्हेंटमध्ये एक clickEvent
गुणधर्म असतो (फक्त मूळ इव्हेंट प्रकार असतो तेव्हा click
) ज्यामध्ये क्लिक इव्हेंटसाठी इव्हेंट ऑब्जेक्ट असतो.
पद्धत | वर्णन |
---|---|
show.bs.dropdown |
शो उदाहरण पद्धत कॉल केल्यावर लगेच फायर होते. |
shown.bs.dropdown |
जेव्हा ड्रॉपडाउन वापरकर्त्यासाठी दृश्यमान केले जाते आणि CSS संक्रमण पूर्ण होते तेव्हा फायर केले जाते. |
hide.bs.dropdown |
लपवा उदाहरण पद्धत कॉल केल्यावर लगेच आग लागते. |
hidden.bs.dropdown |
जेव्हा ड्रॉपडाउन वापरकर्त्यापासून लपविले जाणे पूर्ण झाले आणि CSS संक्रमणे पूर्ण झाली तेव्हा फायर केले. |
var myDropdown = document.getElementById('myDropdown')
myDropdown.addEventListener('show.bs.dropdown', function () {
// do something...
})