Navs
Dokumentacija i primjeri za korištenje uključenih navigacijskih komponenti Bootstrapa.
Navigacija dostupna u Bootstrapu dijeli opće oznake i stilove, od osnovne .nav
klase do aktivnih i onemogućenih stanja. Zamijenite klase modifikatora za prebacivanje između svakog stila.
Osnovna .nav
komponenta je izgrađena sa flexboxom i pruža snažnu osnovu za izgradnju svih vrsta navigacijskih komponenti. Uključuje neke zaobilaženja stilova (za rad sa listama), neke dodatke linkova za veće pogođene oblasti i osnovni onemogućeni stil.
Osnovna .nav
komponenta ne uključuje nijedno .active
stanje. Sljedeći primjeri uključuju klasu, uglavnom da bi pokazali da ova određena klasa ne pokreće nikakav poseban stil.
<ul class="nav">
<li class="nav-item">
<a class="nav-link active" 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" href="#">Disabled</a>
</li>
</ul>
Klase se koriste svuda, tako da vaše oznake mogu biti super fleksibilne. Upotrijebite <ul>
s kao što je gore ili zamotajte svoj s recimo <nav>
elementom. Budući da .nav
koristi display: flex
, navigacijske veze se ponašaju isto kao i navigacijske stavke, ali bez dodatnih oznaka.
<nav class="nav">
<a class="nav-link active" href="#">Active</a>
<a class="nav-link" href="#">Link</a>
<a class="nav-link" href="#">Link</a>
<a class="nav-link disabled" href="#">Disabled</a>
</nav>
Promijenite stil .nav
komponente s modifikatorima i uslužnim programima. Pomiješajte i spojite po potrebi ili napravite svoje.
Promijenite horizontalno poravnanje vaše navigacije pomoću flexbox uslužnih programa . Prema zadanim postavkama, navigacije su poravnate lijevo, ali ih možete lako promijeniti u centar ili desno.
Centrirano sa .justify-content-center
:
<ul class="nav justify-content-center">
<li class="nav-item">
<a class="nav-link active" 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" href="#">Disabled</a>
</li>
</ul>
Desno poravnato sa .justify-content-end
:
<ul class="nav justify-content-end">
<li class="nav-item">
<a class="nav-link active" 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" href="#">Disabled</a>
</li>
</ul>
Složite svoju navigaciju promjenom smjera flex stavke pomoću .flex-column
uslužnog programa. Trebate li ih složiti na neke okvire za prikaz, ali ne i na druge? Koristite responzivne verzije (npr. .flex-sm-column
).
<ul class="nav flex-column">
<li class="nav-item">
<a class="nav-link active" 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" href="#">Disabled</a>
</li>
</ul>
Kao i uvijek, vertikalna navigacija je moguća i bez <ul>
s.
<nav class="nav flex-column">
<a class="nav-link active" href="#">Active</a>
<a class="nav-link" href="#">Link</a>
<a class="nav-link" href="#">Link</a>
<a class="nav-link disabled" href="#">Disabled</a>
</nav>
Uzima osnovnu navigaciju odozgo i dodaje .nav-tabs
klasu za generiranje interfejsa sa karticama. Upotrijebite ih za kreiranje tabulatornih regija pomoću našeg JavaScript dodatka za karticu .
<ul class="nav nav-tabs">
<li class="nav-item">
<a class="nav-link active" 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" href="#">Disabled</a>
</li>
</ul>
Uzmite isti HTML, ali .nav-pills
umjesto toga koristite:
<ul class="nav nav-pills">
<li class="nav-item">
<a class="nav-link active" 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" href="#">Disabled</a>
</li>
</ul>
Prisilite svoj .nav
sadržaj da proširi punu dostupnu širinu jedne od dvije klase modifikatora. Da biste proporcionalno ispunili sav raspoloživi prostor svojim .nav-item
s, koristite .nav-fill
. Primijetite da je sav horizontalni prostor zauzet, ali nema svaka stavka za navigaciju iste širine.
<ul class="nav nav-pills nav-fill">
<li class="nav-item">
<a class="nav-link active" href="#">Active</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">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" href="#">Disabled</a>
</li>
</ul>
Kada koristite <nav>
navigaciju zasnovanu na -, obavezno uključite .nav-item
sidra.
<nav class="nav nav-pills nav-fill">
<a class="nav-item nav-link active" href="#">Active</a>
<a class="nav-item nav-link" href="#">Link</a>
<a class="nav-item nav-link" href="#">Link</a>
<a class="nav-item nav-link disabled" href="#">Disabled</a>
</nav>
Za elemente jednake širine koristite .nav-justified
. Sav horizontalni prostor će biti zauzet navigacijskim vezama, ali za razliku od .nav-fill
gore navedenog, svaka navigacijska stavka će biti iste širine.
<nav class="nav nav-pills nav-justified">
<a class="nav-link active" href="#">Active</a>
<a class="nav-link" href="#">Longer nav link</a>
<a class="nav-link" href="#">Link</a>
<a class="nav-link disabled" href="#">Disabled</a>
</nav>
Slično kao u .nav-fill
primjeru koji koristi <nav>
navigaciju baziranu na -, obavezno uključite .nav-item
sidra.
<nav class="nav nav-pills nav-justified">
<a class="nav-item nav-link active" href="#">Active</a>
<a class="nav-item nav-link" href="#">Link</a>
<a class="nav-item nav-link" href="#">Link</a>
<a class="nav-item nav-link disabled" href="#">Disabled</a>
</nav>
Ako su vam potrebne varijacije za brzu navigaciju, razmislite o korištenju niza flexbox uslužnih programa . Iako su više opširni, ovi uslužni programi nude veće prilagođavanje preko reakcionih tačaka prekida. U primjeru ispod, naša navigacija će biti složena na najnižoj tački prekida, a zatim će se prilagoditi horizontalnom rasporedu koji ispunjava dostupnu širinu počevši od male tačke prekida.
<nav class="nav nav-pills flex-column flex-sm-row">
<a class="flex-sm-fill text-sm-center nav-link active" href="#">Active</a>
<a class="flex-sm-fill text-sm-center nav-link" href="#">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" href="#">Disabled</a>
</nav>
Ako koristite navs za pružanje navigacijske trake, obavezno dodajte a role="navigation"
u najlogičniji roditeljski kontejner <ul>
, ili omotajte <nav>
element oko cijele navigacije. Nemojte dodavati ulogu <ul>
samoj, jer bi to spriječilo da bude objavljena kao stvarna lista od strane pomoćnih tehnologija.
Imajte na umu da trake za navigaciju, čak i ako su vizuelno stilizovane kao kartice sa .nav-tabs
klasom, ne bi trebale davati role="tablist"
, role="tab"
ili role="tabpanel"
atribute. Oni su prikladni samo za dinamičke interfejse sa karticama, kao što je opisano u WAI ARIA Authoring Practices . Pogledajte JavaScript ponašanje za dinamičke interfejse sa karticama u ovom odjeljku za primjer.
Dodajte padajuće menije sa malo dodatnog HTML-a i padajućim JavaScript dodacima .
<ul class="nav nav-tabs">
<li class="nav-item">
<a class="nav-link active" href="#">Active</a>
</li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" data-toggle="dropdown" href="#" role="button" aria-haspopup="true" aria-expanded="false">Dropdown</a>
<div class="dropdown-menu">
<a class="dropdown-item" href="#">Action</a>
<a class="dropdown-item" href="#">Another action</a>
<a class="dropdown-item" href="#">Something else here</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="#">Separated link</a>
</div>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link disabled" href="#">Disabled</a>
</li>
</ul>
<ul class="nav nav-pills">
<li class="nav-item">
<a class="nav-link active" href="#">Active</a>
</li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" data-toggle="dropdown" href="#" role="button" aria-haspopup="true" aria-expanded="false">Dropdown</a>
<div class="dropdown-menu">
<a class="dropdown-item" href="#">Action</a>
<a class="dropdown-item" href="#">Another action</a>
<a class="dropdown-item" href="#">Something else here</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="#">Separated link</a>
</div>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link disabled" href="#">Disabled</a>
</li>
</ul>
Koristite JavaScript dodatak za karticu – uključite ga pojedinačno ili putem kompajlirane bootstrap.js
datoteke – da proširite naše navigacijske kartice i tablete kako biste kreirali okna lokalnog sadržaja sa tabulatorima, čak i putem padajućih menija.
Ako gradite naš JavaScript iz izvora, on zahtijevautil.js
.
Dinamički interfejsi sa karticama, kao što je opisano u WAI ARIA Authoring Practices , zahtevaju role="tablist"
, role="tab"
, role="tabpanel"
, i dodatne aria-
atribute kako bi preneli svoju strukturu, funkcionalnost i trenutno stanje korisnicima pomoćnih tehnologija (kao što su čitači ekrana).
Imajte na umu da dinamički interfejsi sa karticama ne bi trebali sadržavati padajuće menije, jer to uzrokuje probleme upotrebljivosti i pristupačnosti. Iz perspektive upotrebljivosti, činjenica da element okidača trenutno prikazane kartice nije odmah vidljiv (jer se nalazi unutar zatvorenog padajućeg menija) može izazvati zabunu. Sa stanovišta pristupačnosti, trenutno ne postoji razuman način da se ova vrsta konstrukcije mapira u standardni WAI ARIA obrazac, što znači da se ne može lako učiniti razumljivim korisnicima pomoćnih tehnologija.
Sirovi teksas za koji vjerovatno niste čuli za džins šorc Austin. Nesciunt tofu stumptown aliqua, retro synth master cleanse. Brkovi kliše tempor, williamsburg carles veganska helvetica. Reprehenderit butcher retro keffiyeh dreamcatcher synth. Cosby džemper eu banh mi, qui irure terry richardson ex squid. Aliquip placeat salvia cillum iphone. Seitan aliquip quis kardigan američka odjeća, mesar voluptate nisi qui.
Food truck fixie locavore, accusamus mcsweeney's marfa nulla single-origin coffee squid. Exercitation +1 labore velit, blog sartorial PBR leggings next level wes anderson artisan four loko farm-to-table craft beer twee. Qui photo booth letterpress, commodo enim craft beer mlkshk aliquip jean shorts ullamco ad vinyl cillum PBR. Homo nostrud organic, assumenda labore aesthetic magna delectus mollit. Keytar helvetica VHS salvia yr, vero magna velit sapiente labore stumptown. Vegan fanny pack odio cillum wes anderson 8-bit, sustainable jean shorts beard ut DIY ethical culpa terry richardson biodiesel. Art party scenester stumptown, tumblr butcher vero sint qui sapiente accusamus tattooed echo park.
Etsy mixtape wayfarers, ethical wes anderson tofu before they sold out mcsweeney's organic lomo retro fanny pack lo-fi farm-to-table readymade. Messenger bag gentrify pitchfork tattooed craft beer, iphone skateboard locavore carles etsy salvia banksy hoodie helvetica. DIY synth PBR banksy irony. Leggings gentrify squid 8-bit cred pitchfork. Williamsburg banh mi whatever gluten-free, carles pitchfork biodiesel fixie etsy retro mlkshk vice blog. Scenester cred you probably haven't heard of them, vinyl craft beer blog stumptown. Pitchfork sustainable tofu synth chambray yr.
Kako bi se zadovoljile vaše potrebe, ovo radi sa <ul>
--based markup, kao što je prikazano gore, ili sa bilo kojim proizvoljnim "roll your own" markiranje. Imajte na umu da ako koristite <nav>
, ne biste trebali direktno dodavati role="tablist"
u njega, jer bi to nadjačalo izvornu ulogu elementa kao orijentira za navigaciju. Umjesto toga, prebacite se na alternativni element (u primjeru ispod, jednostavan <div>
) i omotajte ga <nav>
oko njega.
Dodatak tabs takođe radi sa pilulama.
Consequat occaecat ullamco amet non eiusmod nostrud dolore irure incididunt est duis anim sunt officia. Fugiat velit proident aliquip nisi incididunt nostrud exercitation proident est nisi. Irure magna elit commodo anim ex veniam culpa eiusmod id nostrud sit cupidatat in veniam ad. Eiusmod consequat eu adipisicing minim anim aliquip cupidatat culpa excepteur quis. Occaecat sit eu exercitation irure Lorem incididunt nostrud.
Ad pariatur nostrud pariatur exercitation ipsum ipsum culpa mollit commodo mollit ex. Aute sunt incididunt amet commodo est sint nisi deserunt pariatur do. Aliquip ex eiusmod voluptate exercitation cillum id incididunt elit sunt. Qui minim sit magna Lorem id et dolore velit Lorem amet exercitation duis deserunt. Anim id labore elit adipisicing ut in id occaecat pariatur ut ullamco ea tempor duis.
Est quis nulla laborum officia ad nisi ex nostrud culpa Lorem excepteur aliquip dolor aliqua irure ex. Nulla ut duis ipsum nisi elit fugiat commodo sunt reprehenderit laborum veniam eu veniam. Eiusmod minim exercitation fugiat irure ex labore incididunt do fugiat commodo aliquip sit id deserunt reprehenderit aliquip nostrud. Amet ex cupidatat excepteur aute veniam incididunt mollit cupidatat esse irure officia elit do ipsum ullamco Lorem. Ullamco ut ad minim do mollit labore ipsum laboris ipsum commodo sunt tempor enim incididunt. Commodo quis sunt dolore aliquip aute tempor irure magna enim minim reprehenderit. Ullamco consectetur culpa veniam sint cillum aliqua incididunt velit ullamco sunt ullamco quis quis commodo voluptate. Mollit nulla nostrud adipisicing aliqua cupidatat aliqua pariatur mollit voluptate voluptate consequat non.
I sa vertikalnim tabletama.
Cillum ad ut irure tempor velit nostrud occaecat ullamco aliqua anim Lorem sint. Veniam sint duis incididunt do esse magna mollit excepteur laborum qui. Id id reprehenderit sit est eu aliqua occaecat quis et velit excepteur laborum mollit dolore eiusmod. Ipsum dolor in occaecat commodo et voluptate minim reprehenderit mollit pariatur. Deserunt non laborum enim et cillum eu deserunt osim ea incididunt minim occaecat.
Culpa dolor voluptate do laboris laboris irure reprehenderit id incididunt duis pariatur mollit aute magna pariatur consectetur. Eu veniam duis non ut dolor deserunt commodo et minim in quis laboris ipsum velit id veniam. Quis ut consectetur adipisicing officia excepteur non sit. Ut et elit aliquip labore Lorem enim eu. Ullamco mollit occaecat dolore ipsum id officia mollit qui esse anim eiusmod do sint minim consectetur qui.
Fugiat id quis dolor culpa eiusmod anim velit excepteur proident dolor aute qui magna. Ad proident laboris ullamco esse anim Lorem Lorem veniam quis Lorem irure occaecat velit nostrud magna nulla. Velit et et proident Lorem do ea tempor officia dolor. Reprehenderit Lorem aliquip labore est magna commodo est ea veniam consectetur.
Eu dolore ea ullamco dolore Lorem id cupidatat excepteur reprehenderit consectetur elit id dolor proident in cupidatat officia. Voluptate excepteur commodo labore nisi cillum duis aliqua do. Aliqua amet qui mollit consectetur nulla mollit velit aliqua veniam nisi id do Lorem deserunt amet. Culpa ullamco sit adipisicing labore officia magna elit nisi in aute tempor commodo eiusmod.
Možete aktivirati navigaciju po kartici ili tabletama bez pisanja JavaScripta jednostavnim navođenjem data-toggle="tab"
ili data-toggle="pill"
na elementu. Koristite ove atribute podataka na .nav-tabs
ili .nav-pills
.
Omogućite kartice koje se mogu tabbirati putem JavaScripta (svaka kartica mora biti aktivirana zasebno):
Pojedinačne kartice možete aktivirati na nekoliko načina:
Da biste učinili da kartice nestaju, dodajte .fade
svakom .tab-pane
. Prvo okno kartica također mora imati .show
da početni sadržaj bude vidljiv.
Asinhrone metode i prijelazi
Sve API metode su asinhrone i pokreću tranziciju . Oni se vraćaju pozivaocu čim prijelaz započne, ali prije nego što se završi . Osim toga, poziv metode na prelaznu komponentu će biti zanemaren .
Pogledajte našu JavaScript dokumentaciju za više informacija.
Aktivira element kartice i kontejner sadržaja. Tab bi trebao imati ili data-target
ciljni href
čvor kontejnera u DOM-u.
Odabire datu karticu i prikazuje pridruženo okno. Bilo koja druga kartica koja je prethodno odabrana postaje poništena, a povezano okno je skriveno. Vraća se pozivaocu prije nego što je tabulator stvarno prikazan (tj. prije nego što se shown.bs.tab
događaj dogodi).
Uništava karticu elementa.
Kada se prikaže nova kartica, događaji se aktiviraju sljedećim redoslijedom:
hide.bs.tab
(na trenutno aktivnoj kartici)show.bs.tab
(na kartici za prikaz)hidden.bs.tab
(na prethodnoj aktivnoj kartici, ista kao i zahide.bs.tab
događaj)shown.bs.tab
(na novo-aktivnoj upravo prikazanoj kartici, ista kao i zashow.bs.tab
događaj)
Ako nijedna kartica već nije bila aktivna, događaji hide.bs.tab
i hidden.bs.tab
neće se pokrenuti.
Vrsta događaja | Opis |
---|---|
show.bs.tab | This event fires on tab show, but before the new tab has been shown. Use event.target and event.relatedTarget to target the active tab and the previous active tab (if available) respectively. |
shown.bs.tab | This event fires on tab show after a tab has been shown. Use event.target and event.relatedTarget to target the active tab and the previous active tab (if available) respectively. |
hide.bs.tab | This event fires when a new tab is to be shown (and thus the previous active tab is to be hidden). Use event.target and event.relatedTarget to target the current active tab and the new soon-to-be-active tab, respectively. |
hidden.bs.tab | This event fires after a new tab is shown (and thus the previous active tab is hidden). Use event.target and event.relatedTarget to target the previous active tab and the new active tab, respectively. |