Biçe ser naveroka sereke Biçe navîgasyon belgeyan
Check
in English

Dropdowns

Bi pêveka daketinê ya Bootstrap re ji bo nîşandana navnîşên lînkan û hêj bêtir pêveberên kontekstê biguherînin.

Têgihiştinî

Dropdown ji bo xuyangkirina navnîşên lînkan û hêj bêtir veguheztin, serpêhatiyên kontekstê ne. Ew bi pêveka dakêşana JavaScript-ê ya Bootstrap-ê ve girêdayî têne çêkirin. Ew bi tikandinê têne guheztin, ne bi hejandinê; ev biryarek sêwiranê ye .

Dropdowns li ser pirtûkxaneyek partiya sêyem, Popper , ku cîhê dînamîk û vedîtina dîmenderê peyda dike, têne çêkirin. Pê bawer bin ku berî JavaScript-a Bootstrap-ê popper.min.js têxinbootstrap.bundle.min.js nav xwe an jî bikar bînin / bootstrap.bundle.jsya ku Popper heye. Popper nayê bikar anîn ku dakêşan di navbaran de bi cih bike her çend ji ber ku pozîsyona dînamîkî ne hewce ye.

Gihîştina

Standarda WAI ARIArole="menu" widgetek rastîn diyar dike , lê ev taybetî ji bo pêşekên wekî serîlêdanê yên ku kiryar an fonksiyonan didin destpêkirin e. Pêşekên ARIA tenê dikarin hêmanên menu, hêmanên menuya qutiya kontrolê, hêmanên menuya bişkojka radyoyê, komên bişkojka radyoyê û jêr-pêşekan hebin.

Ji hêla din ve, dakêşanên Bootstrap têne sêwirandin ku ji bo cûrbecûr rewş û strukturên nîşankirinê gelemperî bin û werin sepandin. Mînakî, gengaz e ku meriv pelên dakêşan biafirîne ku têketinên zêde û kontrolên formê dihewîne, wek qadên lêgerînê an formên têketinê. Ji ber vê yekê, Bootstrap ne li bendê ye (ne jî bixweber lê zêde bike) yek ji wan roleû aria-taybetmendiyên ku ji bo pêşekên ARIA -ya rastîn hewce ne. Nivîskar neçar in ku van taybetmendiyên taybetî bi xwe vekin.

Lêbelê, Bootstrap ji bo piraniya danûstendinên menuya klavyeyê yên standard piştgirîya çêkirî lê zêde dike, wek mînak şiyana ku meriv di nav .dropdown-itemhêmanên kesane de bi karanîna bişkokên pîvazê bigere û menuyê bi ESCbişkojkê bigire.

Examples

Veguheztina dakêşanê (bişkojka xwe an girêdana xwe) û menuya dakêşanê di hundurê de .dropdown, an hêmanek din a ku diyar dike, bipêçin position: relative;. Dropdown dikarin ji <a>an <button>hêmanan werin avêtin da ku çêtir hewcedariyên weyên potansiyel bicîh bînin. Mînakên ku li vir têne xuyang kirin li cîhê ku pêdivî ye hêmanên semantîk bikar tînin <ul>, lê nîşankirina xwerû tê piştgirî kirin.

Bişkojka yekane

Her yek yek .btndikare bi hin guhertinên nîşankirinê ve were veguheztinek dakêşan. Li vir çawa hûn dikarin wan bi her <button>hêmanan re bixebitin:

html
<div class="dropdown">
  <button class="btn btn-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">
    Dropdown button
  </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>
  </ul>
</div>

Û bi <a>hêmanên:

html
<div class="dropdown">
  <a class="btn btn-secondary dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false">
    Dropdown link
  </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>
  </ul>
</div>

Beşa çêtirîn ev e ku hûn dikarin bi her cûrbecûr bişkojkê re jî bikin:

<!-- 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>

Split button

Bi heman rengî, bişkojkên veqetandî bi hema hema bi heman nîşankirinê wekî dakêşanên yek bişkokê, lê bi lêzêdekirina ji .dropdown-toggle-splitbo cîhê rast li dora kêşeya dakêşanê biafirînin.

Em vê pola zêde bikar tînin da ku horizontî paddingli her du aliyên xêzikê% 25 kêm bikin û ya margin-leftku ji bo daxistina bişkojka birêkûpêk hatî zêdekirin jêbirin. Van guheztinên zêde hêlînê di bişkoka dabeşkirinê de navend dihêlin û li kêleka bişkoka sereke deverek lêdanek bi guncantir peyda dikin.

<!-- 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>

Mezinbûn

Daxistina bişkokan bi bişkokên her mezinahî re dixebitin, tevî bişkokên dakêşanê yên xwerû û dabeşkirî.

<!-- 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>

Daxistinan tarî

Vebijêrin daketinên tarîtir da ku bi navbarek tarî an şêwazek xwerû bi lêzêdekirina .dropdown-menu-darknavberek heyî re li hev bikin .dropdown-menu. Di hêmanên daketî de guherandin ne hewce ye.

html
<div class="dropdown">
  <button class="btn btn-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">
    Dropdown button
  </button>
  <ul class="dropdown-menu dropdown-menu-dark">
    <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>

Û wê di navbarê de bikar bînin:

html
<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="#" role="button" data-bs-toggle="dropdown" aria-expanded="false">
            Dropdown
          </a>
          <ul class="dropdown-menu dropdown-menu-dark">
            <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>

Tarîfa bikaranînê

RTL

Dema ku Bootstrap-ê di RTL-ê de bikar tînin rêwerz têne xuyang kirin, tê vê wateyê ku .dropstartdê li milê rastê xuya bibe.

Navendî kirin

Menuya dakêşanê ya ku navenda wê li binê guheztina .dropdown-centerli ser hêmana dêûbav e, çêbikin.

html
<div class="dropdown-center">
  <button class="btn btn-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">
    Centered dropdown
  </button>
  <ul class="dropdown-menu">
    <li><a class="dropdown-item" href="#">Action</a></li>
    <li><a class="dropdown-item" href="#">Action two</a></li>
    <li><a class="dropdown-item" href="#">Action three</a></li>
  </ul>
</div>

Dropup

.dropupBi lêzêdekirina li hêmana dêûbav pêşekên daketinê yên li jor vekin.

<!-- 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>

Dropup navend

Menûya dakêşanê ya ku li jor veguheztina li ser .dropup-centerhêmana dêûbav tê navendê çêbikin.

html
<div class="dropup-center dropup">
  <button class="btn btn-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">
    Centered dropup
  </button>
  <ul class="dropdown-menu">
    <li><a class="dropdown-item" href="#">Action</a></li>
    <li><a class="dropdown-item" href="#">Action two</a></li>
    <li><a class="dropdown-item" href="#">Action three</a></li>
  </ul>
</div>

Dropend

.dropendBi lêzêdekirina li hêmana dêûbav pêşekên dakêşanê li milê rastê hêmanan vekin.

<!-- Default dropend button -->
<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">
    <!-- 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 Dropend</span>
  </button>
  <ul class="dropdown-menu">
    <!-- Dropdown menu links -->
  </ul>
</div>

Dropstart

.dropstartBi lêzêdekirina li hêmana dêûbav pêşekên dakêşanê li milê çepê hêmanan vekin.

<!-- 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 dropstart">
  <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>
  <button type="button" class="btn btn-secondary">
    Split dropstart
  </button>
</div>

Hûn dikarin <a>an <button>hêmanan wekî hêmanên dakêşanê bikar bînin.

html
<div class="dropdown">
  <button class="btn btn-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">
    Dropdown
  </button>
  <ul class="dropdown-menu">
    <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>

Her weha hûn dikarin bi .dropdown-item-text. Dilxwazin ku bi CSS-ya xwerû an karûbarên nivîsê bêtir şêwaz bikin.

html
<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>

Jîr

.activeTiştên di pelika dakêşanê de zêde bikin da ku wan wekî çalak şêwaz bikin . Ji bo gihandina rewşa çalak ji teknolojiyên arîkar re, aria-currenttaybetmendiyê bikar bînin - pagenirxê ji bo rûpela heyî, an trueji bo tiştê heyî di komekê de bikar bînin.

html
<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>

Bêmecel

.disabledTiştên di pelika daketinê de lê zêde bikin da ku wan wekî neçalak şêwaz bikin .

html
<ul class="dropdown-menu">
  <li><a class="dropdown-item" href="#">Regular link</a></li>
  <li><a class="dropdown-item disabled">Disabled link</a></li>
  <li><a class="dropdown-item" href="#">Another link</a></li>
</ul>

Ji hêla xwerû ve, pêşekek dakêşanê bixweber 100% ji jor û li milê çepê yê dêûbavê xwe tê danîn. Hûn dikarin vê bi .drop*dersên rêwerzan biguhezînin, lê hûn dikarin wan bi dersên guhêrbar ên din jî kontrol bikin.

Pêşeka daketinê .dropdown-menu-endli a .dropdown-menuber bi rastê ve zêde bikin. Dema ku Bootstrap-ê di RTL-ê de bikar tînin rêwerz têne xuyang kirin, tê vê wateyê ku .dropdown-menu-enddê li milê çepê xuya bibe.

Serê xwe! Dropdown bi saya Popper têne cîh kirin ji bilî dema ku ew di navbarek navbar de ne.
html
<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>

Lihevhatina bersivdar

Heke hûn dixwazin hevrêziya bersivdar bikar bînin, bi lêzêdekirina taybetmendiyê pozîsyona dînamîkî neçalak bikin data-bs-display="static"û çînên guheztina bersivdar bikar bînin.

Ji bo ku menuya dakêşanê ya rast.dropdown-menu{-sm|-md|-lg|-xl|-xxl}-end bi xala veqetandinê ya diyarkirî an mezintir hevrêz bikin, lê zêde bikin.

html
<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>

Ji bo ku menuya daketinê ya çepê bi xala veqetînê ya diyarkirî an mezintir re hevrêz bikin, lê zêde bikin .dropdown-menu-endû .dropdown-menu{-sm|-md|-lg|-xl|-xxl}-start.

html
<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>

Bala xwe bidinê ku hûn ne hewce ne ku data-bs-display="static"taybetmendiyek li bişkokên dakêşanê yên di navbaran de zêde bikin, ji ber ku Popper di navbaran de nayê bikar anîn.

Vebijarkên Alignment

Bi girtina piraniya vebijarkên ku li jor hatine xuyang kirin, li vir demoyek piçûk a metbexê heye ku vebijarkên cûrbecûr rêzkirina dakêşanê li yek cîhek heye.

html
<div class="btn-group">
  <button class="btn btn-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" aria-expanded="false">
    Dropdown
  </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">
  <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>

Headers

Sernavek lê zêde bikin da ku beşên çalakiyan di her menuya dakêşanê de nîşan bikin.

html
<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>

Dividers

Komên hêmanên menuya têkildar bi dabeşkerek veqetînin.

html
<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>

Nivîstok

Her metnek belaş di nav pêşekek dakêşanê de bi nivîsê ve bi cîh bikin û karûbarên valakirinê bikar bînin . Bala xwe bidinê ku hûn ê muhtemelen hewceyê şêwazên mezinbûnê yên din bin da ku firehiya menuyê asteng bikin.

html
<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>

Forms

Formek di nav pêşekek dakêşan�� de bixin, an jî wê bikin menuyek dakêşanê, û karûbarên marjînal an peldankê bikar bînin da ku cîhê neyînî ya ku hûn hewce dikin bidin wê.

html
<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>
html
<div class="dropdown">
  <button type="button" class="btn btn-primary dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false" data-bs-auto-close="outside">
    Dropdown form
  </button>
  <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>
</div>

Bikaranîn data-bs-offsetan data-bs-referenceji bo guheztina cîhê dakêşanê.

html
<div class="d-flex">
  <div class="dropdown me-1">
    <button type="button" class="btn btn-secondary dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false" data-bs-offset="10,20">
      Offset
    </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>
    </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" data-bs-toggle="dropdown" aria-expanded="false" data-bs-reference="parent">
      <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>
</div>

Tevgera girtina otomatîkî

Ji hêla xwerû ve, dema ku li hundur an derveyî menuya dakêşanê bitikîne, menuya dakêşanê girtî ye. Hûn dikarin autoClosevebijarkê bikar bînin da ku vê tevgera dakêşanê biguhezînin.

html
<div class="btn-group">
  <button class="btn btn-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" data-bs-auto-close="true" aria-expanded="false">
    Default dropdown
  </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">
  <button class="btn btn-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" data-bs-auto-close="inside" aria-expanded="false">
    Clickable outside
  </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">
  <button class="btn btn-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" data-bs-auto-close="outside" aria-expanded="false">
    Clickable inside
  </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">
  <button class="btn btn-secondary dropdown-toggle" type="button" data-bs-toggle="dropdown" data-bs-auto-close="false" aria-expanded="false">
    Manual close
  </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>

CSS

Variables

Di v5.2.0 de hate zêdekirin

Wekî beşek ji nêzikbûna guhêrbarên CSS-ê yên pêşveçûyî yên Bootstrap, dakêşan naha guhêrbarên CSS-ê yên herêmî li ser .dropdown-menuji bo xwerûkirina rast-dema pêşkeftî bikar tînin. Nirxên ji bo guhêrbarên CSS bi Sass ve têne danîn, ji ber vê yekê xwerûkirina Sass hîn jî piştgirî ye.

  --#{$prefix}dropdown-zindex: #{$zindex-dropdown};
  --#{$prefix}dropdown-min-width: #{$dropdown-min-width};
  --#{$prefix}dropdown-padding-x: #{$dropdown-padding-x};
  --#{$prefix}dropdown-padding-y: #{$dropdown-padding-y};
  --#{$prefix}dropdown-spacer: #{$dropdown-spacer};
  @include rfs($dropdown-font-size, --#{$prefix}dropdown-font-size);
  --#{$prefix}dropdown-color: #{$dropdown-color};
  --#{$prefix}dropdown-bg: #{$dropdown-bg};
  --#{$prefix}dropdown-border-color: #{$dropdown-border-color};
  --#{$prefix}dropdown-border-radius: #{$dropdown-border-radius};
  --#{$prefix}dropdown-border-width: #{$dropdown-border-width};
  --#{$prefix}dropdown-inner-border-radius: #{$dropdown-inner-border-radius};
  --#{$prefix}dropdown-divider-bg: #{$dropdown-divider-bg};
  --#{$prefix}dropdown-divider-margin-y: #{$dropdown-divider-margin-y};
  --#{$prefix}dropdown-box-shadow: #{$dropdown-box-shadow};
  --#{$prefix}dropdown-link-color: #{$dropdown-link-color};
  --#{$prefix}dropdown-link-hover-color: #{$dropdown-link-hover-color};
  --#{$prefix}dropdown-link-hover-bg: #{$dropdown-link-hover-bg};
  --#{$prefix}dropdown-link-active-color: #{$dropdown-link-active-color};
  --#{$prefix}dropdown-link-active-bg: #{$dropdown-link-active-bg};
  --#{$prefix}dropdown-link-disabled-color: #{$dropdown-link-disabled-color};
  --#{$prefix}dropdown-item-padding-x: #{$dropdown-item-padding-x};
  --#{$prefix}dropdown-item-padding-y: #{$dropdown-item-padding-y};
  --#{$prefix}dropdown-header-color: #{$dropdown-header-color};
  --#{$prefix}dropdown-header-padding-x: #{$dropdown-header-padding-x};
  --#{$prefix}dropdown-header-padding-y: #{$dropdown-header-padding-y};
  

Xweserîkirin bi navgîniya guhêrbarên CSS-ê li ser .dropdown-menu-darkpola ku em bêyî lê zêdekirina hilbijarkên CSS-ê yên dubare li ser nirxên taybetî radikin, tê dîtin.

  --#{$prefix}dropdown-color: #{$dropdown-dark-color};
  --#{$prefix}dropdown-bg: #{$dropdown-dark-bg};
  --#{$prefix}dropdown-border-color: #{$dropdown-dark-border-color};
  --#{$prefix}dropdown-box-shadow: #{$dropdown-dark-box-shadow};
  --#{$prefix}dropdown-link-color: #{$dropdown-dark-link-color};
  --#{$prefix}dropdown-link-hover-color: #{$dropdown-dark-link-hover-color};
  --#{$prefix}dropdown-divider-bg: #{$dropdown-dark-divider-bg};
  --#{$prefix}dropdown-link-hover-bg: #{$dropdown-dark-link-hover-bg};
  --#{$prefix}dropdown-link-active-color: #{$dropdown-dark-link-active-color};
  --#{$prefix}dropdown-link-active-bg: #{$dropdown-dark-link-active-bg};
  --#{$prefix}dropdown-link-disabled-color: #{$dropdown-dark-link-disabled-color};
  --#{$prefix}dropdown-header-color: #{$dropdown-dark-header-color};
  

Guherbarên Sass

Guherbarên ji bo hemî dakêşan:

$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:             var(--#{$prefix}border-color-translucent);
$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($dropdown-link-color, 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-x:         $dropdown-item-padding-x;
$dropdown-header-padding-y:         $dropdown-padding-y;
// fusv-disable
$dropdown-header-padding:           $dropdown-header-padding-y $dropdown-header-padding-x; // Deprecated in v5.2.0
// fusv-enable

Guherbarên ji bo daketina tarî :

$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;

Guherbarên ji bo lêkerên CSS-ê yên ku înteraktîfek dakêşanê destnîşan dikin:

$caret-width:                 .3em;
$caret-vertical-align:        $caret-width * .85;
$caret-spacing:               $caret-width * .85;

Mixins

Mixins têne bikar anîn da ku kartên bingehîn ên CSS-ê hilberînin û di nav de têne dîtin 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;
    }
  }
}

Bikaranîna

Bi navgîniya taybetmendiyên daneyê an JavaScriptê ve, pêveka dakêşanê naveroka veşartî (menekên dakêşan) bi guheztina .showpola li ser dêûbav diguhezîne .dropdown-menu. Taybetmendî data-bs-toggle="dropdown"ji bo girtina pêşekên dakêşanê di astek serîlêdanê de pê ve girêdayî ye, ji ber vê yekê ramanek baş e ku hûn her gav wê bikar bînin.

Li ser cîhazên pêça-çalakkirî, vekirina peldankek hilgirên vala mouseoverli zarokên tavilê yên <body>hêmanê zêde dike. Ev hacka bêkêmasî ya nebaş pêdivî ye ku meriv di delegasyona bûyera iOS-ê de li dor xeletiyek bixebite , ku wekî din rê li ber tepek li cîhek derveyî dakêşanê bigire ku koda ku dakêşanê digire dest pê bike. Dema ku dakêşandin girtî be, ev mouseoverrêkarên vala yên zêde têne rakirin.

Bi taybetmendiyên daneyê

Ji data-bs-toggle="dropdown"bo guheztina peldankekê li lînkek an bişkokek zêde bikin.

<div class="dropdown">
  <button type="button" data-bs-toggle="dropdown" aria-expanded="false">
    Dropdown trigger
  </button>
  <ul class="dropdown-menu">
    ...
  </ul>
</div>

Bi JavaScript

Bi navgîniya JavaScript-ê ve bang bikin:

const dropdownElementList = document.querySelectorAll('.dropdown-toggle')
const dropdownList = [...dropdownElementList].map(dropdownToggleEl => new bootstrap.Dropdown(dropdownToggleEl))
data-bs-toggle="dropdown"hîn jî pêwîst e

Her çiqas hûn bi JavaScript-ê ve gazî daketina xwe bikin an li şûna data-api-ê bikar bînin, data-bs-toggle="dropdown"pêdivî ye ku her gav li ser hêmana dakêşanê hebe.

Vebijêrk

Ji ber ku vebijark dikarin bi taybetmendiyên daneyan an JavaScriptê ve werin derbas kirin, hûn dikarin navek vebijarkê lê zêde bikin data-bs-, wekî di data-bs-animation="{value}". Dema ku vebijarkan bi taybetmendiyên daneyê re derbas bikin, pê ewle bin ku hûn celebê doza navê vebijarkê ji " camelCase " veguherînin " kebab-case ". Mînakî, data-bs-custom-class="beautifier"li şûna bikar bînin data-bs-customClass="beautifier".

Ji Bootstrap 5.2.0-ê, hemî pêkhate taybetmendiyek daneya veqetandî ya ceribandinêdata-bs-config piştgirî dikin ku dikare veavakirina hêmanek hêsan wekî rêzek JSON bihewîne. Dema ku hêmanek hebe data-bs-config='{"delay":0, "title":123}'û data-bs-title="456"taybetmendî hebe, nirxa paşîn titledê bibe 456û taybetmendiyên daneya veqetandî dê nirxên ku li ser hatine dayîn derbas bikin data-bs-config. Digel vê yekê, taybetmendiyên daneya heyî dikarin nirxên JSON ên mîna data-bs-delay='{"show":0,"hide":150}'.

Nav Awa Destçûnî Terîf
autoClose boolean, string true Tevgera girtina otomatîkî ya dakêşanê mîheng bikin:
  • true- bi tikandina li derve an li hundurê menuya dakêşanê dê peldank were girtin.
  • false- bi tikandina bişkoka veguheztinê û bi destan bang hidean togglerêbazê dê pelika dakêşanê were girtin. (Herwiha bi tikandina bişkojê nayê girtin esc)
  • 'inside'- bi tikandina hundurê menuya dakêşanê dê (tenê) dakêşan were girtin.
  • 'outside'- bi tikandina li derveyî menuya dakêşanê (tenê) dakêşana wê were girtin.
Nîşe: dakêşana her gav dikare bi ESCmifteyê were girtin.
boundary têl, hêman 'clippingParents' Sînorê astengiya Overflow ya menuya dakêşanê (tenê ji bo guhezkera preventOverflow ya Popper derbas dibe). Bi xwerû ew e clippingParentsû dikare referansek HTMLElement (tenê bi JavaScriptê) qebûl bike. Ji bo bêtir agahdarî serî li belgeyên detectOverflow yên Popper bidin .
display ben 'dynamic' Bi xwerû, em Popper-ê ji bo pozîsyona dînamîkî bikar tînin. Vê bi neçalak bike static.
offset array, string, fonksiyon [0, 2] Berhevkirina dakêşanê li gorî armanca xwe. Hûn dikarin rêzek di taybetmendiyên daneyê de bi nirxên ji hev veqetandî wek: data-bs-offset="10,20". Dema ku fonksiyonek ji bo destnîşankirina offset tê bikar anîn, ew bi tiştek ku cîhê popper, referans, û rekteyên popper wekî argumana wê ya yekem vedihewîne tê gotin. Hêmana destkêşanê ya DOM-ê wekî argumana duyemîn derbas dibe. Fonksiyon divê arrayek bi du hejmaran vegerîne: şkandin , dûr . Ji bo bêtir agahdarî serî li belgeyên offset ên Popper bidin .
popperConfig null, nesne, fonksiyon null Ji bo guherandina veavakirina Popperê ya xwerû ya Bootstrap, li veavakirina Popper binêre . Dema ku fonksiyonek ji bo afirandina veavakirina Popper tê bikar anîn, ew bi hêmanek ku veavakirina Popper-a xwerû ya Bootstrap-ê vedihewîne tê gotin. Ew ji we re dibe alîkar ku hûn xwerû bi veavakirina xwe re bikar bînin û hev bikin. Pêdivî ye ku fonksiyon ji bo Popper tiştek veavakirinê vegerîne.
reference têl, hêman, nesne 'toggle' Hêmana referansê ya menuya dakêşanê. Nirxên 'toggle', 'parent', referansa HTMLElement an jî tiştek peyda dike qebûl dike getBoundingClientRect. Ji bo bêtir agahdarî serî li belgeyên çêker û belgeyên hêmana virtual ya Popper bidin .

Bikaranîna fonksiyonê bipopperConfig

const dropdown = new bootstrap.Dropdown(element, {
  popperConfig(defaultBsPopperConfig) {
    // const newPopperConfig = {...}
    // use defaultBsPopperConfig if needed...
    // return newPopperConfig
  }
})

Methods

Awa Terîf
dispose Daxistina elementek hilweşîne. (Daneyên hilanîn ên li ser hêmana DOM-ê radike)
getInstance Rêbaza statîkî ya ku dihêle hûn mînaka dakêşanê ya ku bi hêmanek DOM-ê ve girêdayî ye bistînin, hûn dikarin wê bi vî rengî bikar bînin: bootstrap.Dropdown.getInstance(element).
getOrCreateInstance Rêbaza statîk a ku mînakek dakêşanê ya ku bi hêmanek DOM-ê ve girêdayî vedigerîne an heke ew nehatibe destpêkirin yek nû diafirîne. Hûn dikarin wê bi vî rengî bikar bînin bootstrap.Dropdown.getOrCreateInstance(element):.
hide Menûya dakêşana navbarek diyarkirî an navîgasyonek tablo vedişêre.
show Menûya dakêşanê ya navbarek diyarkirî an navîgasyonek tabelê nîşan dide.
toggle Menûya dakêşanê ya navbarek diyarkirî an navîgasyonek tabloyê vedike.
update Positiona dakêşana hêmanek nûve dike.

Events

Hemî bûyerên dakêşanê li ser hêmana guheztinê têne şewitandin û dûv re têne hilanîn. Ji ber vê yekê hûn dikarin guhdarên bûyerê li ser .dropdown-menuhêmana dêûbav jî lê zêde bikin. hide.bs.dropdownû hidden.bs.dropdownbûyeran clickEventtaybetmendiyek heye (tenê gava ku celebê Bûyerê ya orîjînal be click) ku ji bo bûyera klîk Tiştek Bûyerê dihewîne.

Cureyê bûyerê Terîf
hide.bs.dropdown hideDema ku rêbaza nimûneyê hate gazîkirin tavilê dişewite .
hidden.bs.dropdown Dema ku dakêşana ku ji bikarhêner ve hatî veşartin xilas bû û veguheztina CSS qediya.
show.bs.dropdown showDema ku rêbaza nimûneyê tê gazîkirin tavilê dişewite .
shown.bs.dropdown Dema ku dakêşana ji bikarhênerê re xuya bû û veguheztinên CSS qediyan, tê şewitandin.
const myDropdown = document.getElementById('myDropdown')
myDropdown.addEventListener('show.bs.dropdown', event => {
  // do something...
})