Navs
Dokumentasi dan contoh cara menggunakan komponen navigasi yang disertakan Bootstrap.
Navigasi tersedia dalam Bootstrap berkongsi markup dan gaya umum, daripada .nav
kelas asas kepada keadaan aktif dan dilumpuhkan. Tukar kelas pengubah suai untuk bertukar antara setiap gaya.
Komponen asas .nav
dibina dengan flexbox dan menyediakan asas yang kukuh untuk membina semua jenis komponen navigasi. Ia termasuk beberapa penggantian gaya (untuk bekerja dengan senarai), beberapa padding pautan untuk kawasan hit yang lebih besar dan penggayaan asas yang dilumpuhkan.
Komponen asas .nav
tidak termasuk mana-mana .active
keadaan. Contoh berikut termasuk kelas, terutamanya untuk menunjukkan bahawa kelas tertentu ini tidak mencetuskan sebarang penggayaan khas.
Kelas digunakan sepanjang masa, jadi markup anda boleh menjadi sangat fleksibel. Gunakan <ul>
s seperti di atas, atau gulung sendiri dengan katakan <nav>
elemen. Kerana .nav
kegunaan display: flex
, pautan nav berkelakuan sama seperti item nav, tetapi tanpa penanda tambahan.
Tukar gaya .nav
komponen s dengan pengubah suai dan utiliti. Campurkan dan padankan mengikut keperluan, atau bina sendiri.
Tukar penjajaran mendatar navigasi anda dengan utiliti flexbox . Secara lalai, nav dijajar ke kiri, tetapi anda boleh menukarnya dengan mudah ke dijajar tengah atau kanan.
Berpusat dengan .justify-content-center
:
Dijajarkan ke kanan dengan .justify-content-end
:
Susun navigasi anda dengan menukar arah item flex dengan .flex-column
utiliti. Perlu menyusunnya pada beberapa port pandangan tetapi tidak pada yang lain? Gunakan versi responsif (cth, .flex-sm-column
).
Seperti biasa, navigasi menegak boleh dilakukan tanpa <ul>
s juga.
Mengambil nav asas dari atas dan menambah .nav-tabs
kelas untuk menjana antara muka tab. Gunakannya untuk mencipta kawasan boleh tab dengan pemalam JavaScript tab kami .
Ambil HTML yang sama, tetapi gunakan .nav-pills
:
Paksa .nav
kandungan anda untuk memanjangkan lebar penuh tersedia satu daripada dua kelas pengubah suai. Untuk mengisi semua ruang yang ada secara berkadar dengan .nav-item
s anda, gunakan .nav-fill
. Perhatikan bahawa semua ruang mendatar diduduki, tetapi tidak setiap item nav mempunyai lebar yang sama.
Apabila menggunakan <nav>
navigasi berasaskan, pastikan anda memasukkan .nav-item
pada sauh.
Untuk elemen yang sama lebar, gunakan .nav-justified
. Semua ruang mendatar akan diduduki oleh pautan navigasi, tetapi tidak seperti di .nav-fill
atas, setiap item navigasi akan mempunyai lebar yang sama.
Sama seperti .nav-fill
contoh menggunakan <nav>
navigasi berasaskan, pastikan anda memasukkan .nav-item
pada sauh.
Jika anda memerlukan variasi navigasi responsif, pertimbangkan untuk menggunakan satu siri utiliti flexbox . Walaupun lebih bertele-tele, utiliti ini menawarkan penyesuaian yang lebih besar merentas titik putus responsif. Dalam contoh di bawah, nav kami akan disusun pada titik putus terendah, kemudian menyesuaikan diri dengan susun atur mendatar yang mengisi lebar yang tersedia bermula dari titik putus kecil.
Jika anda menggunakan navs untuk menyediakan bar navigasi, pastikan anda menambahkan a role="navigation"
pada bekas induk yang paling logik bagi <ul>
, atau balut <nav>
elemen di sekeliling keseluruhan navigasi. Jangan tambah peranan pada <ul>
dirinya sendiri, kerana ini akan menghalangnya daripada diumumkan sebagai senarai sebenar oleh teknologi bantuan.
Ambil perhatian bahawa bar navigasi, walaupun digayakan secara visual sebagai tab dengan .nav-tabs
kelas, tidak boleh diberikan role="tablist"
, role="tab"
atau role="tabpanel"
atribut. Ini hanya sesuai untuk antara muka tab dinamik, seperti yang diterangkan dalam Amalan Pengarangan WAI ARIA . Lihat tingkah laku JavaScript untuk antara muka tab dinamik dalam bahagian ini sebagai contoh.
Tambahkan menu lungsur turun dengan sedikit HTML tambahan dan pemalam JavaScript lungsur turun .
Gunakan pemalam JavaScript tab—masukkannya secara individu atau melalui bootstrap.js
fail yang disusun—untuk melanjutkan tab dan pil navigasi kami untuk mencipta anak tetingkap kandungan tempatan boleh tab, walaupun melalui menu lungsur.
Jika anda sedang membina JavaScript kami daripada sumber, ia memerlukanutil.js
.
Antara muka tab dinamik, seperti yang diterangkan dalam Amalan Pengarangan WAI ARIA , memerlukan role="tablist"
, role="tab"
, role="tabpanel"
, dan aria-
atribut tambahan untuk menyampaikan struktur, fungsi dan keadaan semasanya kepada pengguna teknologi bantuan (seperti pembaca skrin).
Ambil perhatian bahawa antara muka tab dinamik tidak seharusnya mengandungi menu lungsur, kerana ini menyebabkan masalah kebolehgunaan dan kebolehaksesan. Dari perspektif kebolehgunaan, fakta bahawa elemen pencetus tab yang dipaparkan pada masa ini tidak kelihatan serta-merta (kerana ia berada di dalam menu lungsur turun tertutup) boleh menyebabkan kekeliruan. Dari sudut kebolehaksesan, pada masa ini tiada cara yang munasabah untuk memetakan konstruk jenis ini kepada corak WAI ARIA standard, bermakna ia tidak boleh difahami dengan mudah oleh pengguna teknologi bantuan.
Denim mentah anda mungkin tidak pernah mendengarnya seluar pendek jean Austin. Nesciunt tauhu stumptown aliqua, pembersihan master synth retro. Misai cliche tempor, williamsburg carles vegan helvetica. Reprehenderit butcher retro keffiyeh dreamcatcher synth. Cosby sweater eu banh mi, qui irure terry richardson ex sotong. Aliquip placeat salvia cillum iphone. Seitan aliquip quis cardigan pakaian Amerika, tukang daging 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.
Untuk membantu memenuhi keperluan anda, ini berfungsi dengan <ul>
penanda berasaskan, seperti yang ditunjukkan di atas, atau dengan sebarang penanda "gulungkan anda sendiri" sewenang-wenangnya. Ambil perhatian bahawa jika anda menggunakan <nav>
, anda tidak sepatutnya menambah role="tablist"
terus padanya, kerana ini akan mengatasi peranan asli elemen sebagai tanda tempat navigasi. Sebaliknya, tukar kepada elemen alternatif (dalam contoh di bawah, yang mudah <div>
) dan bungkus di <nav>
sekelilingnya.
Pemalam tab juga berfungsi dengan pil.
Consequat occaecat ullamco amet non eiusmod nostrud dolore irure incididunt est duis anim sunt officia. Fugit 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.
Dan dengan pil menegak.
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 excepteur 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.
Anda boleh mengaktifkan navigasi tab atau pil tanpa menulis sebarang JavaScript dengan hanya menyatakan data-toggle="tab"
atau data-toggle="pill"
pada elemen. Gunakan atribut data ini pada .nav-tabs
atau .nav-pills
.
Dayakan tab boleh tab melalui JavaScript (setiap tab perlu diaktifkan secara individu):
Anda boleh mengaktifkan tab individu dalam beberapa cara:
Untuk membuat tab pudar, tambahkan .fade
pada setiap .tab-pane
. Anak tetingkap tab pertama juga mesti perlu .show
membuat kandungan awal kelihatan.
Kaedah dan peralihan tak segerak
Semua kaedah API adalah tak segerak dan mulakan peralihan . Mereka kembali kepada pemanggil sebaik sahaja peralihan dimulakan tetapi sebelum ia tamat . Selain itu, panggilan kaedah pada komponen peralihan akan diabaikan .
Lihat dokumentasi JavaScript kami untuk mendapatkan maklumat lanjut.
Mengaktifkan elemen tab dan bekas kandungan. Tab harus mempunyai sama ada data-target
atau href
menyasarkan nod bekas dalam DOM.
Memilih tab yang diberikan dan menunjukkan anak tetingkap yang berkaitan. Mana-mana tab lain yang sebelum ini dipilih menjadi tidak dipilih dan anak tetingkap berkaitannya disembunyikan. Kembali kepada pemanggil sebelum anak tetingkap tab sebenarnya telah ditunjukkan (iaitu sebelum shown.bs.tab
peristiwa berlaku).
Memusnahkan tab elemen.
Apabila menunjukkan tab baharu, peristiwa berlaku dalam susunan berikut:
hide.bs.tab
(pada tab aktif semasa)show.bs.tab
(pada tab yang akan ditunjukkan)hidden.bs.tab
(pada tab aktif sebelumnya, sama seperti untukhide.bs.tab
acara)shown.bs.tab
(pada tab yang baru aktif ditunjukkan, sama seperti untukshow.bs.tab
acara itu)
Jika tiada tab sudah aktif, maka acara hide.bs.tab
dan hidden.bs.tab
tidak akan dicetuskan.
Jenis acara | Penerangan |
---|---|
show.bs.tab | Peristiwa ini berlaku pada rancangan tab, tetapi sebelum tab baharu dipaparkan. Gunakan event.target dan event.relatedTarget untuk menyasarkan tab aktif dan tab aktif sebelumnya (jika tersedia) masing-masing. |
ditunjukkan.bs.tab | Peristiwa ini berlaku pada rancangan tab selepas tab ditunjukkan. Gunakan event.target dan event.relatedTarget untuk menyasarkan tab aktif dan tab aktif sebelumnya (jika tersedia) masing-masing. |
hide.bs.tab | Peristiwa ini berlaku apabila tab baharu hendak ditunjukkan (dan oleh itu tab aktif sebelumnya akan disembunyikan). Gunakan event.target dan event.relatedTarget untuk menyasarkan tab aktif semasa dan tab baru yang akan aktif, masing-masing. |
hidden.bs.tab | Peristiwa ini berlaku selepas tab baharu ditunjukkan (dan dengan itu tab aktif sebelumnya disembunyikan). Gunakan event.target dan event.relatedTarget untuk menyasarkan tab aktif sebelumnya dan tab aktif baharu, masing-masing. |