нав
Дакументацыя і прыклады выкарыстання навігацыйных кампанентаў Bootstrap.
База нав
Навігацыя, даступная ў Bootstrap, падзяляе агульную разметку і стылі, ад базавага .nav
класа да актыўнага і адключанага станаў. Мяняйце класы мадыфікатараў для пераключэння паміж кожным стылем.
Базавы .nav
кампанент створаны з дапамогай flexbox і забяспечвае трывалую аснову для стварэння ўсіх тыпаў навігацыйных кампанентаў. Ён уключае некаторыя перавызначэнні стыляў (для працы са спісамі), некаторую запаўненне спасылак для вялікіх абласцей трапленняў і асноўны стыль для адключэнняў.
Базавы .nav
кампанент не ўключае .active
стан. Наступныя прыклады ўключаюць у сябе клас, галоўным чынам, каб прадэманстраваць, што гэты канкрэтны клас не выклікае ніякіх спецыяльных стыляў.
Класы выкарыстоўваюцца паўсюль, таму ваша разметка можа быць вельмі гнуткай. Выкарыстоўвайце <ul>
s, як паказана вышэй, <ol>
калі парадак вашых прадметаў важны, або кідайце свой уласны з <nav>
элементам. З-за .nav
выкарыстання display: flex
навігацыйныя спасылкі паводзяць сябе гэтак жа, як навігацыйныя элементы, але без дадатковай разметкі.
Даступныя стылі
Змяніце стыль .nav
кампанента s з дапамогай мадыфікатараў і ўтыліт. Змешвайце і спалучайце па меры неабходнасці або стварайце ўласныя.
Гарызантальнае выраўноўванне
Змяніце гарызантальнае выраўноўванне вашай навігацыі з дапамогай утыліт flexbox . Па змаўчанні навігацыі выраўнаваны па левым краі, але вы можаце лёгка змяніць іх па цэнтры або па правым краі.
Па цэнтры .justify-content-center
:
Выраўнавана па правым краі .justify-content-end
:
Вертыкальны
Складзіце вашу навігацыю, змяніўшы кірунак гнуткага элемента з дапамогай .flex-column
утыліты. Неабходна скласці іх на адных вокнах, але не на іншых? Выкарыстоўвайце адаптыўныя версіі (напрыклад, .flex-sm-column
).
Як заўсёды, вертыкальная навігацыя магчымая і без <ul>
s.
Укладкі
Бярэ асноўную навігацыю зверху і дадае .nav-tabs
клас для стварэння інтэрфейсу з укладкамі. Выкарыстоўвайце іх для стварэння абласцей з укладкамі з дапамогай нашага плагіна JavaScript для ўкладак .
Таблеткі
Вазьміце той жа HTML, але выкарыстоўвайце .nav-pills
замест гэтага:
Запоўніце і абгрунтуйце
Прымусьце ваш .nav
змест пашырыць поўную даступную шырыню аднаго з двух класаў мадыфікатараў. Каб прапарцыйна запоўніць усю даступную прастору вашым .nav-item
s, выкарыстоўвайце .nav-fill
. Звярніце ўвагу, што ўся гарызантальная прастора занятая, але не кожны элемент навігацыі мае аднолькавую шырыню.
Калі вы выкарыстоўваеце <nav>
навігацыю на аснове -, вы можаце смела апускаць яе .nav-item
, бо .nav-link
патрабуецца толькі для <a>
элементаў стылю.
Для элементаў роўнай шырыні выкарыстоўвайце .nav-justified
. Уся гарызантальная прастора будзе занята навігацыйнымі спасылкамі, але ў адрозненне ад .nav-fill
вышэйзгаданага, кожны навігацыйны элемент будзе аднолькавай шырыні.
Падобна .nav-fill
прыкладу з выкарыстаннем <nav>
навігацыі на аснове.
Праца з утылітамі flex
Калі вам патрэбны адаптыўныя варыянты навігацыі, падумайце аб выкарыстанні серыі ўтыліт flexbox . Нягледзячы на тое, што гэтыя ўтыліты больш падрабязныя, яны прапануюць лепшыя магчымасці налады па адаптыўных кропках прыпынку. У прыведзеным ніжэй прыкладзе наша навігацыя будзе складзена на самай ніжняй кропцы разрыву, а затым адаптуецца да гарызантальнага макета, які запаўняе даступную шырыню, пачынаючы з малой кропкі разрыву.
Наконт даступнасці
Калі вы выкарыстоўваеце navs, каб забяспечыць панэль навігацыі, не забудзьцеся дадаць role="navigation"
у найбольш лагічны бацькоўскі кантэйнер <ul>
або абгарнуць <nav>
элемент вакол усёй навігацыі. Не дадавайце ролю ў <ul>
саму сябе, бо гэта не дазволіць аб'явіць яе як сапраўдны спіс дапаможнымі тэхналогіямі.
Звярніце ўвагу, што панэлі навігацыі, нават калі яны візуальна аформлены як укладкі з .nav-tabs
класам, не павінны даваць role="tablist"
, role="tab"
або role="tabpanel"
атрыбуты. Яны прыдатныя толькі для дынамічных інтэрфейсаў з укладкамі, як апісана ў WAI ARIA Authoring Practices . Глядзіце ў якасці прыкладу паводзіны JavaScript для дынамічных інтэрфейсаў з укладкамі ў гэтым раздзеле.
Выкарыстанне выпадаючых спісаў
Дадайце выпадаючыя меню з невялікай колькасцю дадатковага HTML і плагіна для выпадаючых спісаў JavaScript .
Укладкі з выпадальным меню
Таблеткі з выпадальным меню
Паводзіны JavaScript
Выкарыстоўвайце плагін JavaScript для ўкладак — уключыце яго асобна або праз скампіляваны bootstrap.js
файл — каб пашырыць нашы навігацыйныя ўкладкі і таблеткі, каб ствараць панэлі лакальнага змесціва з укладкамі, нават з дапамогай выпадаючых меню.
Калі вы ствараеце наш JavaScript з зыходнага кода, патрабуеццаutil.js
.
Дынамічныя інтэрфейсы з укладкамі, як апісана ў WAI ARIA Authoring Practices , патрабуюць role="tablist"
, role="tab"
, role="tabpanel"
і дадатковых aria-
атрыбутаў, каб перадаць сваю структуру, функцыянальнасць і бягучы стан карыстальнікам дапаможных тэхналогій (такіх як праграмы чытання з экрана).
Звярніце ўвагу, што дынамічныя інтэрфейсы з укладкамі не павінны ўтрымліваць выпадаючыя меню, бо гэта выклікае праблемы як з зручнасцю выкарыстання, так і з даступнасцю. З пункту гледжання зручнасці выкарыстання, той факт, што элемент т��ыгера ўкладкі, які зараз адлюстроўваецца, не бачны адразу (паколькі ён знаходзіцца ў закрытым выпадальным меню), можа выклікаць блытаніну. З пункту гледжання даступнасці, у цяперашні час не існуе разумнага спосабу супаставіць такую канструкцыю са стандартным шаблонам WAI ARIA, што азначае, што яе немагчыма зрабіць зразумелай для карыстальнікаў дапаможных тэхналогій.
Неапрацаваны дэнім, вы напэўна не чулі пра іх джынсавыя шорты Осцін. Nesciunt tofu stumptown aliqua, рэтра-сінтэзатар майстар ачысткі. Moustache cliche tempor, williamsburg carles vegan helvetica. Reprehenderit butcher retro keffiyeh dreamcatcher synth. Швэдар Cosby eu banh mi, qui irure Тэры Рычардсан былы кальмар. Aliquip placeat salvia cillum iphone. Seitan aliquip quis кардыган амерыканскае адзенне, мяснік 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.
Каб задаволіць вашыя патрэбы, гэта працуе з <ul>
разметкай на аснове -, як паказана вышэй, або з любой адвольнай разметкай "сваёй уласнай". Звярніце ўвагу, што калі вы выкарыстоўваеце <nav>
, вы не павінны дадаваць role="tablist"
непасрэдна да яго, бо гэта перавызначае родную ролю элемента ў якасці навігацыйнага арыенціра. Замест гэтага пераключыцеся на альтэрнатыўны элемент (у прыкладзе ніжэй просты <div>
) і абгарніце <nav>
вакол яго.
Убудова tabs таксама працуе з таблеткамі.
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 exceptioneur 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.
І з вертыкальнымі таблеткамі.
Cillum ad ut irure tempor velit nostrud occaecat ullamco aliqua anim Lorem sint. Veniam sint duis incididunt do esse magna mollit exceptioneur laborum qui. Id id reprehenderit sit est eu aliqua occaecat quis et velit exceptioneur laborum mollit dolore eiusmod. Ipsum dolor in occaecat commodo et voluptate minim reprehenderit mollit pariatur. Deserunt non laborum enim et cillum eu deserunt exceptioneur 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.
Выкарыстанне атрыбутаў дадзеных
Вы можаце актываваць навігацыю па ўкладках або таблетках без напісання JavaScript, проста ўказаўшы data-toggle="tab"
або data-toggle="pill"
на элеменце. Выкарыстоўвайце гэтыя атрыбуты дадзеных на .nav-tabs
або .nav-pills
.
Праз JavaScript
Уключыць укладкі з дапамогай JavaScript (кожную ўкладку неабходна актываваць асобна):
Вы можаце актываваць асобныя ўкладкі некалькімі спосабамі:
Эфект выцвітання
Каб укладкі знікалі, дадайце .fade
да кожнай .tab-pane
. Першая панэль укладак таксама павінна .show
зрабіць пачатковы кантэнт бачным.
Метады
Асінхронныя метады і пераходы
Усе метады API асінхронныя і пачынаюць пераход . Яны вяртаюцца да абанента, як толькі пачынаецца пераход, але да яго заканчэння . Акрамя таго, выклік метаду пераходнага кампанента будзе ігнаравацца .
Для атрымання дадатковай інфармацыі глядзіце нашу дакументацыю па JavaScript .
$().таб
Актывуе элемент укладкі і кантэйнер змесціва. На ўкладцы павінна быць альбо data-target
або, href
арыентаванае на вузел кантэйнера ў DOM.
.tab('паказаць')
Выбірае дадзеную ўкладку і паказвае звязаную з ёй панэль. Любая іншая ўкладка, якая была выбрана раней, становіцца невыбранай, а звязаная з ёй панэль схавана. Вяртаецца да абанента да таго, як панэль укладак была фактычна паказана (г.зн. да таго , як shown.bs.tab
адбудзецца падзея).
.tab('утылізаваць')
Знішчае ўкладку элемента.
Падзеі
Пры паказе новай укладкі падзеі запускаюцца ў наступным парадку:
hide.bs.tab
(на бягучай актыўнай укладцы)show.bs.tab
(на ўкладцы, якая будзе паказана)hidden.bs.tab
(на папярэдняй актыўнай укладцы, той жа, што і дляhide.bs.tab
падзеі)shown.bs.tab
(на толькі што паказанай толькі што актыўнай укладцы, той самай, што і дляshow.bs.tab
падзеі)
Калі ніводная ўкладка яшчэ не была актыўнай, падзеі hide.bs.tab
і hidden.bs.tab
не будуць запушчаны.
Тып падзеі | Апісанне |
---|---|
паказаць.bs.tab | Гэта падзея запускаецца падчас паказу ўкладак, але да таго, як будзе паказана новая ўкладка. Выкарыстоўвайце event.target і event.relatedTarget , каб нацэліць на актыўную ўкладку і папярэднюю актыўную ўкладку (калі ёсць) адпаведна. |
паказаны.bs.tab | Гэта падзея спрацоўвае падчас паказу ўкладак пасля паказу ўкладкі. Выкарыстоўвайце event.target і event.relatedTarget , каб нацэліць на актыўную ўкладку і папярэднюю актыўную ўкладку (калі ёсць) адпаведна. |
hide.bs.tab | Гэта падзея спрацоўвае, калі трэба паказаць новую ўкладку (і, такім чынам, папярэднюю актыўную ўкладку трэба схаваць). Выкарыстоўвайце event.target і event.relatedTarget , каб нацэліць на бягучую актыўную ўкладку і новую ўкладку, якая хутка стане актыўнай, адпаведна. |
схаваная.bs.ўкладка | Гэта падзея спрацоўвае пасля таго, як новая ўкладка паказваецца (і, такім чынам, папярэдняя актыўная ўкладка схавана). Выкарыстоўвайце event.target і event.relatedTarget , каб нацэліць на папярэднюю актыўную ўкладку і на новую актыўную ўкладку адпаведна. |