ნავიბარი
დოკუმენტაცია და მაგალითები Bootstrap-ის ძლიერი, საპასუხო ნავიგაციის სათაურის, navbar-ისთვის. მოიცავს ბრენდინგის, ნავიგაციის და სხვათა მხარდაჭერას, მათ შორის ჩვენი კოლაფსის მოდულის მხარდაჭერას.
Როგორ მუშაობს
აქ არის ის, რაც უნდა იცოდეთ სანამ დაიწყებთ navbar-ს:
- Navbars საჭიროებს შეფუთვას საპასუხო კოლაფსისთვის და
.navbar
ფერის სქემის კლასებისთვის..navbar-expand{-sm|-md|-lg|-xl|-xxl}
- Navbars და მათი შინაარსი ნაგულისხმევად სითხეა. შეცვალეთ კონტეინერი , რათა შეზღუდოთ მათი ჰორიზონტალური სიგანე სხვადასხვა გზით.
- გამოიყენეთ ჩვენი ინტერვალის და მოქნილი კომუნალური კლასები, რათა აკონტროლოთ მანძილი და გასწორება ნავი ზოლებში.
- Navbars ნაგულისხმევად რეაგირებს, მაგრამ თქვენ შეგიძლიათ მარტივად შეცვალოთ ისინი ამის შესაცვლელად. საპასუხო ქცევა დამოკიდებულია ჩვენს Collapse JavaScript დანამატზე.
- უზრუნველყავით ხელმისაწვდომობა ელემენტის გამოყენებით ან, თუ იყენებთ უფრო ზოგად ელემენტს ,
<nav>
როგორიცაა .<div>
role="navigation"
- მიუთითეთ მიმდინარე ელემენტი
aria-current="page"
მიმდინარე გვერდისთვის ანaria-current="true"
ნაკრების მიმდინარე ელემენტის გამოყენებით.
prefers-reduced-motion
მედიის მოთხოვნაზე. იხილეთ
ჩვენი ხელმისაწვდომობის დოკუმენტაციის შემცირებული მოძრაობის განყოფილება .
მხარდაჭერილი შინაარსი
Navbars მოყვება ჩაშენებული მხარდაჭერა რამდენიმე ქვეკომპონენტისთვის. საჭიროებისამებრ აირჩიეთ შემდეგი:
.navbar-brand
თქვენი კომპანიის, პროდუქტის ან პროექტის სახელისთვის..navbar-nav
სრული სიმაღლის და მსუბუქი ნავიგაციისთვის (ჩაშვების მხარდაჭერის ჩათვლით)..navbar-toggler
ჩვენს კოლაფსის დანამატთან და ნავიგაციის გადართვის სხვა ქცევებთან გამოსაყენებლად.- მოქნილი და დაშორების საშუალებები ნებისმიერი ფორმის კონტროლისა და მოქმედებისთვის.
.navbar-text
ვერტიკალურად ორიენტირებული ტექსტის სტრიქონების დასამატებლად..collapse.navbar-collapse
ნავიბარის შიგთავსის დაჯგუფებისა და დამალვისთვის მშობლის წყვეტის წერტილის მიხედვით.- დაამატეთ სურვილისამებრ გაფართოებული ნავიბარის შინაარსის დასაყენებლად
.navbar-scroll
დაmax-height
გადახვევისთვის .
აქ მოცემულია ყველა ქვეკომპონენტის მაგალითი, რომელიც შედის საპასუხო მსუბუქი თემის ნავიგბარში, რომელიც ავტომატურად იშლება lg
(დიდი) წყვეტის წერტილში.
<nav class="navbar navbar-expand-lg navbar-light bg-light">
<div class="container-fluid">
<a class="navbar-brand" href="#">Navbar</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarSupportedContent">
<ul class="navbar-nav me-auto mb-2 mb-lg-0">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="#">Home</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false">
Dropdown
</a>
<ul class="dropdown-menu" aria-labelledby="navbarDropdown">
<li><a class="dropdown-item" href="#">Action</a></li>
<li><a class="dropdown-item" href="#">Another action</a></li>
<li><hr class="dropdown-divider"></li>
<li><a class="dropdown-item" href="#">Something else here</a></li>
</ul>
</li>
<li class="nav-item">
<a class="nav-link disabled">Disabled</a>
</li>
</ul>
<form class="d-flex">
<input class="form-control me-2" type="search" placeholder="Search" aria-label="Search">
<button class="btn btn-outline-success" type="submit">Search</button>
</form>
</div>
</div>
</nav>
ეს მაგალითი იყენებს ფონის ( bg-light
) და ინტერვალის ( my-2
, my-lg-0
, me-sm-0
, my-sm-0
) სასარგებლო კლასებს.
ბრენდი
.navbar-brand
შეიძლება გამოყენებულ იქნას უმეტეს ელემენტებზე, მაგრამ წამყვანი მუშაობს საუკეთესოდ, რადგან ზოგიერთ ელემენტს შეიძლება დასჭირდეს სასარგებლო კლასები ან მორგებული სტილი .
ტექსტი
დაამატეთ თქვენი ტექსტი ელემენტის ფარგლებში .navbar-brand
კლასში.
<!-- As a link -->
<nav class="navbar navbar-light bg-light">
<div class="container-fluid">
<a class="navbar-brand" href="#">Navbar</a>
</div>
</nav>
<!-- As a heading -->
<nav class="navbar navbar-light bg-light">
<div class="container-fluid">
<span class="navbar-brand mb-0 h1">Navbar</span>
</div>
</nav>
გამოსახულება
თქვენ შეგიძლიათ შეცვალოთ ტექსტი .navbar-brand
ში <img>
.
<nav class="navbar navbar-light bg-light">
<div class="container">
<a class="navbar-brand" href="#">
<img src="/docs/5.1/assets/brand/bootstrap-logo.svg" alt="" width="30" height="24">
</a>
</div>
</nav>
სურათი და ტექსტი
თქვენ ასევე შეგიძლიათ გამოიყენოთ რამდენიმე დამატებითი კომუნალური პროგრამა სურათის და ტექსტის ერთდროულად დასამატებლად. გაითვალისწინეთ დამატება .d-inline-block
და .align-text-top
.<img>
<nav class="navbar navbar-light bg-light">
<div class="container-fluid">
<a class="navbar-brand" href="#">
<img src="/docs/5.1/assets/brand/bootstrap-logo.svg" alt="" width="30" height="24" class="d-inline-block align-text-top">
Bootstrap
</a>
</div>
</nav>
ნავი
Navbar ნავიგაციის ბმულები ეფუძნება ჩვენს .nav
ვარიანტებს საკუთარი მოდიფიკატორის კლასით და მოითხოვს გადამრთველი კლასების გამოყენებას სათანადო რეაგირებადი სტილისთვის. ნავიგაცია ნავიგაციაში ასევე გაიზრდება და დაიკავებს რაც შეიძლება მეტ ჰორიზონტალურ სივრცეს, რათა თქვენი ნავიგაციის შიგთავსი უსაფრთხოდ იყოს გასწორებული.
დაამატეთ .active
კლასი .nav-link
მიმდინარე გვერდის მითითებისთვის.
გთხოვთ გაითვალისწინოთ, რომ თქვენ ასევე უნდა დაამატოთ aria-current
ატრიბუტი აქტიურზე .nav-link
.
<nav class="navbar navbar-expand-lg navbar-light bg-light">
<div class="container-fluid">
<a class="navbar-brand" href="#">Navbar</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="#">Home</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Features</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Pricing</a>
</li>
<li class="nav-item">
<a class="nav-link disabled">Disabled</a>
</li>
</ul>
</div>
</div>
</nav>
და რადგან ჩვენ ვიყენებთ კლასებს ჩვენი ნავიგებისთვის, თქვენ შეგიძლიათ თავიდან აიცილოთ სიაზე დაფუძნებული მიდგომა მთლიანად, თუ გსურთ.
<nav class="navbar navbar-expand-lg navbar-light bg-light">
<div class="container-fluid">
<a class="navbar-brand" href="#">Navbar</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNavAltMarkup" aria-controls="navbarNavAltMarkup" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNavAltMarkup">
<div class="navbar-nav">
<a class="nav-link active" aria-current="page" href="#">Home</a>
<a class="nav-link" href="#">Features</a>
<a class="nav-link" href="#">Pricing</a>
<a class="nav-link disabled">Disabled</a>
</div>
</div>
</div>
</nav>
თქვენ ასევე შეგიძლიათ გამოიყენოთ ჩამოსაშლელი ფაილები თქვენს ნავიგბარში. ჩამოსაშლელი მენიუები საჭიროებს შესაფუთ ელემენტს პოზიციონირებისთვის, ასე რომ, დარწმუნდით, რომ გამოიყენეთ ცალკეული და ჩადგმული ელემენტები .nav-item
და .nav-link
როგორც ეს ნაჩვენებია ქვემოთ.
<nav class="navbar navbar-expand-lg navbar-light bg-light">
<div class="container-fluid">
<a class="navbar-brand" href="#">Navbar</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNavDropdown" aria-controls="navbarNavDropdown" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNavDropdown">
<ul class="navbar-nav">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="#">Home</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Features</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Pricing</a>
</li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" id="navbarDropdownMenuLink" role="button" data-bs-toggle="dropdown" aria-expanded="false">
Dropdown link
</a>
<ul class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
<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>
ფორმები
განათავსეთ სხვადასხვა ფორმის კონტროლი და კომპონენტები navbar-ში:
<nav class="navbar navbar-light bg-light">
<div class="container-fluid">
<form class="d-flex">
<input class="form-control me-2" type="search" placeholder="Search" aria-label="Search">
<button class="btn btn-outline-success" type="submit">Search</button>
</form>
</div>
</nav>
დაუყოვნებელი ბავშვის ელემენტების .navbar
გამოყენება flex განლაგება და ნაგულისხმევი იქნება justify-content: space-between
. გამოიყენეთ დამატებითი flex უტილიტები , როგორც საჭიროა ამ ქცევის კორექტირებისთვის.
<nav class="navbar navbar-light bg-light">
<div class="container-fluid">
<a class="navbar-brand">Navbar</a>
<form class="d-flex">
<input class="form-control me-2" type="search" placeholder="Search" aria-label="Search">
<button class="btn btn-outline-success" type="submit">Search</button>
</form>
</div>
</nav>
ასევე მუშაობს შეყვანის ჯგუფები. თუ თქვენი navbar არის მთლიანი ფორმა, ან ძირითადად ფორმა, შეგიძლიათ გამოიყენოთ <form>
ელემენტი კონტეინერად და შეინახოთ გარკვეული HTML.
<nav class="navbar navbar-light bg-light">
<form class="container-fluid">
<div class="input-group">
<span class="input-group-text" id="basic-addon1">@</span>
<input type="text" class="form-control" placeholder="Username" aria-label="Username" aria-describedby="basic-addon1">
</div>
</form>
</nav>
სხვადასხვა ღილაკები ასევე მხარდაჭერილია, როგორც ამ ნავიბარის ფორმების ნაწილი. ეს ასევე შესანიშნავი შეხსენებაა, რომ ვერტიკალური განლაგების საშუალებები შეიძლება გამოყენებულ იქნას სხვადასხვა ზომის ელემენტების გასასწორებლად.
<nav class="navbar navbar-light bg-light">
<form class="container-fluid justify-content-start">
<button class="btn btn-outline-success me-2" type="button">Main button</button>
<button class="btn btn-sm btn-outline-secondary" type="button">Smaller button</button>
</form>
</nav>
ტექსტი
Navbars შეიძლება შეიცავდეს ტექსტის ნაწილებს .navbar-text
. ეს კლასი არეგულირებს ვერტიკალურ გასწორებას და ჰორიზონტალურ ინტერვალს ტექსტის სტრიქონებისთვის.
<nav class="navbar navbar-light bg-light">
<div class="container-fluid">
<span class="navbar-text">
Navbar text with an inline element
</span>
</div>
</nav>
საჭიროებისამებრ შეურიეთ და შეადარეთ სხვა კომპონენტებთან და კომუნალურ მოწყობილობებთან.
<nav class="navbar navbar-expand-lg navbar-light bg-light">
<div class="container-fluid">
<a class="navbar-brand" href="#">Navbar w/ text</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarText" aria-controls="navbarText" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarText">
<ul class="navbar-nav me-auto mb-2 mb-lg-0">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="#">Home</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Features</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Pricing</a>
</li>
</ul>
<span class="navbar-text">
Navbar text with an inline element
</span>
</div>
</div>
</nav>
ფერადი სქემები
ნავიბარის თემატიკა არასოდეს ყოფილა ადვილი თემატური კლასებისა და background-color
უტილიტების კომბინაციის წყალობით. აირჩიეთ .navbar-light
ღია ფონის ფერებით გამოსაყენებლად ან .navbar-dark
მუქი ფონის ფერებისთვის. შემდეგ, მორგება .bg-*
კომუნალური საშუალებებით.
<nav class="navbar navbar-dark bg-dark">
<!-- Navbar content -->
</nav>
<nav class="navbar navbar-dark bg-primary">
<!-- Navbar content -->
</nav>
<nav class="navbar navbar-light" style="background-color: #e3f2fd;">
<!-- Navbar content -->
</nav>
კონტეინერები
მიუხედავად იმისა, რომ ეს არ არის საჭირო, შეგიძლიათ გადაიტანოთ ნავი ბარი .container
გვერდის ცენტრში, თუმცა გაითვალისწინეთ, რომ შიდა კონტეინერი მაინც საჭიროა. ან შეგიძლიათ დაამატოთ კონტეინერი შიგნით .navbar
მხოლოდ ფიქსირებული ან სტატიკური ზედა ნავიგბარის შიგთავსის ცენტრში .
<div class="container">
<nav class="navbar navbar-expand-lg navbar-light bg-light">
<div class="container-fluid">
<a class="navbar-brand" href="#">Navbar</a>
</div>
</nav>
</div>
გამოიყენეთ ნებისმიერი საპასუხო კონტეინერი, რათა შეცვალოთ რამდენად ფართოა შინაარსი თქვენს ნავიბარში.
<nav class="navbar navbar-expand-lg navbar-light bg-light">
<div class="container-md">
<a class="navbar-brand" href="#">Navbar</a>
</div>
</nav>
განთავსება
გამოიყენეთ ჩვენი პოზიციის უტილიტები , რათა განათავსოთ ნავი ზოლები არასტატიკური პოზიციებზე. აირჩიეთ ზევით დაფიქსირებული, ქვემოზე დამაგრებული ან ზევით მიმაგრებული (გადახვევა გვერდთან ერთად, სანამ არ მიაღწევს ზედა, შემდეგ რჩება). ფიქსირებული navbars გამოიყენება position: fixed
, რაც იმას ნიშნავს, რომ ისინი ამოღებულნი არიან DOM-ის ნორმალური ნაკადიდან და შეიძლება მოითხოვონ მორგებული CSS (მაგ., padding-top
) <body>
სხვა ელემენტებთან გადახურვის თავიდან ასაცილებლად.
ასევე გაითვალისწინეთ, რომ .sticky-top
იყენებს position: sticky
, რომელიც არ არის სრულად მხარდაჭერილი ყველა ბრაუზერში .
<nav class="navbar navbar-light bg-light">
<div class="container-fluid">
<a class="navbar-brand" href="#">Default</a>
</div>
</nav>
<nav class="navbar fixed-top navbar-light bg-light">
<div class="container-fluid">
<a class="navbar-brand" href="#">Fixed top</a>
</div>
</nav>
<nav class="navbar fixed-bottom navbar-light bg-light">
<div class="container-fluid">
<a class="navbar-brand" href="#">Fixed bottom</a>
</div>
</nav>
<nav class="navbar sticky-top navbar-light bg-light">
<div class="container-fluid">
<a class="navbar-brand" href="#">Sticky top</a>
</div>
</nav>
გადახვევა
დაამატეთ .navbar-nav-scroll
ნავიგაციის .navbar-nav
ზოლის ქვეკომპონენტს (ან სხვა ნავიგაციის ქვეკომპონენტს), რათა ჩაეშვათ ვერტიკალური გადახვევა ჩაკეცილი ნავიბარის შიგთავსში. ნაგულისხმევად, გადახვევა იწყება 75vh
(ან ხედის პორტის სიმაღლის 75%), მაგრამ თქვენ შეგიძლიათ ამის უგულებელყოფა ადგილობრივი CSS მორგებული თვისებით --bs-navbar-height
ან მორგებული სტილებით. უფრო დიდ ხედებში, როდესაც ნავიგალური ზოლი გაფართოვდება, შინაარსი გამოჩნდება ისე, როგორც ნაგულისხმევი ნავიგალური პანელი.
გთხოვთ, გაითვალისწინოთ, რომ ამ ქცევას გააჩნია პოტენციური ნაკლი - overflow
როდესაც პარამეტრი overflow-y: auto
(აუცილებელია კონტენტის აქ გადახვევა), overflow-x
არის ტოლფასი auto
, რომელიც ამოიჭრება ზოგიერთი ჰორიზონტალური კონტენტი.
აქ არის ნავიბარის მაგალითი, რომელიც იყენებს .navbar-nav-scroll
, style="--bs-scroll-height: 100px;"
ოპტიმალური დაშორების მიზნით.
<nav class="navbar navbar-expand-lg navbar-light bg-light">
<div class="container-fluid">
<a class="navbar-brand" href="#">Navbar scroll</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarScroll" aria-controls="navbarScroll" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarScroll">
<ul class="navbar-nav me-auto my-2 my-lg-0 navbar-nav-scroll" style="--bs-scroll-height: 100px;">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="#">Home</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" id="navbarScrollingDropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false">
Link
</a>
<ul class="dropdown-menu" aria-labelledby="navbarScrollingDropdown">
<li><a class="dropdown-item" href="#">Action</a></li>
<li><a class="dropdown-item" href="#">Another action</a></li>
<li><hr class="dropdown-divider"></li>
<li><a class="dropdown-item" href="#">Something else here</a></li>
</ul>
</li>
<li class="nav-item">
<a class="nav-link disabled">Link</a>
</li>
</ul>
<form class="d-flex">
<input class="form-control me-2" type="search" placeholder="Search" aria-label="Search">
<button class="btn btn-outline-success" type="submit">Search</button>
</form>
</div>
</div>
</nav>
საპასუხო ქცევები
Navbars-ებს შეუძლიათ გამოიყენონ .navbar-toggler
, .navbar-collapse
და .navbar-expand{-sm|-md|-lg|-xl|-xxl}
კლასები იმის დასადგენად, თუ როდის იშლება მათი შინაარსი ღილაკის მიღმა. სხვა კომუნალურ პროგრამებთან ერთად, შეგიძლიათ მარტივად აირჩიოთ კონკრეტული ელემენტების ჩვენება ან დამალვა.
ნავი ზოლებისთვის, რომლებიც არასოდეს იშლება, დაამატეთ .navbar-expand
კლასი navbar-ზე. ნავი ზოლებისთვის, რომლებიც ყოველთვის იშლება, არ დაამატოთ არცერთი .navbar-expand
კლასი.
გადამრთველი
Navbar-ის გადამრთველები ნაგულისხმევად არის გასწორებული მარცხნივ, მაგრამ თუ ისინი მიჰყვებიან ძმურ ელემენტს, როგორიცაა .navbar-brand
, ისინი ავტომატურად გასწორდებიან უკიდურეს მარჯვნივ. თქვენი მარკირების შებრუნება შეცვლის გადამრთველის განთავსებას. ქვემოთ მოცემულია სხვადასხვა გადართვის სტილის მაგალითები.
არ არის .navbar-brand
ნაჩვენები ყველაზე პატარა წყვეტის წერტილში:
<nav class="navbar navbar-expand-lg navbar-light bg-light">
<div class="container-fluid">
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarTogglerDemo01" aria-controls="navbarTogglerDemo01" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarTogglerDemo01">
<a class="navbar-brand" href="#">Hidden brand</a>
<ul class="navbar-nav me-auto mb-2 mb-lg-0">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="#">Home</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link disabled">Disabled</a>
</li>
</ul>
<form class="d-flex">
<input class="form-control me-2" type="search" placeholder="Search" aria-label="Search">
<button class="btn btn-outline-success" type="submit">Search</button>
</form>
</div>
</div>
</nav>
ბრენდის სახელით ნაჩვენებია მარცხნივ და გადამრთველი მარჯვნივ:
<nav class="navbar navbar-expand-lg navbar-light bg-light">
<div class="container-fluid">
<a class="navbar-brand" href="#">Navbar</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarTogglerDemo02" aria-controls="navbarTogglerDemo02" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarTogglerDemo02">
<ul class="navbar-nav me-auto mb-2 mb-lg-0">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="#">Home</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link disabled">Disabled</a>
</li>
</ul>
<form class="d-flex">
<input class="form-control me-2" type="search" placeholder="Search" aria-label="Search">
<button class="btn btn-outline-success" type="submit">Search</button>
</form>
</div>
</div>
</nav>
გადამრთველით მარცხნივ და ბრენდის სახელით მარჯვნივ:
<nav class="navbar navbar-expand-lg navbar-light bg-light">
<div class="container-fluid">
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarTogglerDemo03" aria-controls="navbarTogglerDemo03" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<a class="navbar-brand" href="#">Navbar</a>
<div class="collapse navbar-collapse" id="navbarTogglerDemo03">
<ul class="navbar-nav me-auto mb-2 mb-lg-0">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="#">Home</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item">
<a class="nav-link disabled">Disabled</a>
</li>
</ul>
<form class="d-flex">
<input class="form-control me-2" type="search" placeholder="Search" aria-label="Search">
<button class="btn btn-outline-success" type="submit">Search</button>
</form>
</div>
</div>
</nav>
გარე შინაარსი
ხანდახან გსურთ გამოიყენოთ დაშლის დანამატი კონტეინერის ელემენტის გასააქტიურებლად კონტენტისთვის, რომელიც სტრუქტურულად ზის გარეთ .navbar
. იმის გამო, რომ ჩვენი დანამატი მუშაობს id
და data-bs-target
ემთხვევა, ეს მარტივად კეთდება!
<div class="collapse" id="navbarToggleExternalContent">
<div class="bg-dark p-4">
<h5 class="text-white h4">Collapsed content</h5>
<span class="text-muted">Toggleable via the navbar brand.</span>
</div>
</div>
<nav class="navbar navbar-dark bg-dark">
<div class="container-fluid">
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarToggleExternalContent" aria-controls="navbarToggleExternalContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
</div>
</nav>
როდესაც ამას აკეთებთ, ჩვენ გირჩევთ ჩართოთ დამატებითი JavaScript, რათა ფოკუსი პროგრამულად გადაიტანოთ კონტეინერში, როდესაც ის გახსნილია. წინააღმდეგ შემთხვევაში, კლავიატურის მომხმარებლებს და დამხმარე ტექნოლოგიების მომხმარებლებს, სავარაუდოდ, გაუჭირდებათ ახლად გამოვლენილი კონტენტის პოვნა - განსაკუთრებით იმ შემთხვევაში, თუ კონტეინერი, რომელიც გახსნილია , დოკუმენტის სტრუქტურაში გადამრთველის წინ მოდის. ჩვენ ასევე გირჩევთ დარწმუნდეთ, რომ გადამრთველს აქვს aria-controls
ატრიბუტი, რომელიც მიუთითებს id
კონტენტის კონტეინერზე. თეორიულად, ეს საშუალებას აძლევს დამხმარე ტექნოლოგიების მომხმარებლებს პირდაპირ გადამრთველიდან გადახტეს კონტეინერზე, რომელსაც ის აკონტროლებს – მაგრამ ამის მხარდაჭერა ამჟამად საკმაოდ ცალმხრივია.
ტილო
გარდაქმენით თქვენი გაფართოებული და იშლება ნავი ბარი offcanvas უჯრად offcanvas დანამატით. ჩვენ ვაფართოებთ როგორც offcanvas-ის ნაგულისხმევ სტილებს და ვიყენებთ ჩვენს .navbar-expand-*
კლასებს დინამიური და მოქნილი ნავიგაციის გვერდითი ზოლის შესაქმნელად.
ქვემოთ მოცემულ მაგალითში, offcanvas navbar-ის შესაქმნელად, რომელიც ყოველთვის იშლება ყველა წყვეტის წერტილში, .navbar-expand-*
მთლიანად გამოტოვეთ კლასი.
<nav class="navbar navbar-light bg-light fixed-top">
<div class="container-fluid">
<a class="navbar-brand" href="#">Offcanvas navbar</a>
<button class="navbar-toggler" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasNavbar" aria-controls="offcanvasNavbar">
<span class="navbar-toggler-icon"></span>
</button>
<div class="offcanvas offcanvas-end" tabindex="-1" id="offcanvasNavbar" aria-labelledby="offcanvasNavbarLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="offcanvasNavbarLabel">Offcanvas</h5>
<button type="button" class="btn-close text-reset" data-bs-dismiss="offcanvas" aria-label="Close"></button>
</div>
<div class="offcanvas-body">
<ul class="navbar-nav justify-content-end flex-grow-1 pe-3">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="#">Home</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Link</a>
</li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" id="offcanvasNavbarDropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false">
Dropdown
</a>
<ul class="dropdown-menu" aria-labelledby="offcanvasNavbarDropdown">
<li><a class="dropdown-item" href="#">Action</a></li>
<li><a class="dropdown-item" href="#">Another action</a></li>
<li>
<hr class="dropdown-divider">
</li>
<li><a class="dropdown-item" href="#">Something else here</a></li>
</ul>
</li>
</ul>
<form class="d-flex">
<input class="form-control me-2" type="search" placeholder="Search" aria-label="Search">
<button class="btn btn-outline-success" type="submit">Search</button>
</form>
</div>
</div>
</div>
</nav>
offcanvas navbar-ის შესაქმნელად, რომელიც გაფართოვდება ნორმალურ ნავიგბარში კონკრეტულ წყვეტის წერტილში, როგორიცაა lg
, გამოიყენეთ .navbar-expand-lg
.
<nav class="navbar navbar-light navbar-expand-lg bg-light fixed-top">
<a class="navbar-brand" href="#">Offcanvas navbar</a>
<button class="navbar-toggler" type="button" data-bs-toggle="offcanvas" data-bs-target="#navbarOffcanvasLg" aria-controls="navbarOffcanvasLg">
<span class="navbar-toggler-icon"></span>
</button>
<div class="offcanvas offcanvas-end" tabindex="-1" id="navbarOffcanvasLg" aria-labelledby="navbarOffcanvasLgLabel">
...
</div>
</nav>
სას
ცვლადები
$navbar-padding-y: $spacer * .5;
$navbar-padding-x: null;
$navbar-nav-link-padding-x: .5rem;
$navbar-brand-font-size: $font-size-lg;
// Compute the navbar-brand padding-y so the navbar-brand will have the same height as navbar-text and nav-link
$nav-link-height: $font-size-base * $line-height-base + $nav-link-padding-y * 2;
$navbar-brand-height: $navbar-brand-font-size * $line-height-base;
$navbar-brand-padding-y: ($nav-link-height - $navbar-brand-height) * .5;
$navbar-brand-margin-end: 1rem;
$navbar-toggler-padding-y: .25rem;
$navbar-toggler-padding-x: .75rem;
$navbar-toggler-font-size: $font-size-lg;
$navbar-toggler-border-radius: $btn-border-radius;
$navbar-toggler-focus-width: $btn-focus-width;
$navbar-toggler-transition: box-shadow .15s ease-in-out;
$navbar-dark-color: rgba($white, .55);
$navbar-dark-hover-color: rgba($white, .75);
$navbar-dark-active-color: $white;
$navbar-dark-disabled-color: rgba($white, .25);
$navbar-dark-toggler-icon-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'><path stroke='#{$navbar-dark-color}' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/></svg>");
$navbar-dark-toggler-border-color: rgba($white, .1);
$navbar-light-color: rgba($black, .55);
$navbar-light-hover-color: rgba($black, .7);
$navbar-light-active-color: rgba($black, .9);
$navbar-light-disabled-color: rgba($black, .3);
$navbar-light-toggler-icon-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'><path stroke='#{$navbar-light-color}' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/></svg>");
$navbar-light-toggler-border-color: rgba($black, .1);
$navbar-light-brand-color: $navbar-light-active-color;
$navbar-light-brand-hover-color: $navbar-light-active-color;
$navbar-dark-brand-color: $navbar-dark-active-color;
$navbar-dark-brand-hover-color: $navbar-dark-active-color;
მარყუჟი
საპასუხო ნავიბარის გაფართოება/ჩაკეცვა კლასები (მაგ., .navbar-expand-lg
) კომბინირებულია $breakpoints
რუკასთან და გენერირდება ციკლის მეშვეობით scss/_navbar.scss
.
// Generate series of `.navbar-expand-*` responsive classes for configuring
// where your navbar collapses.
.navbar-expand {
@each $breakpoint in map-keys($grid-breakpoints) {
$next: breakpoint-next($breakpoint, $grid-breakpoints);
$infix: breakpoint-infix($next, $grid-breakpoints);
// stylelint-disable-next-line scss/selector-no-union-class-name
&#{$infix} {
@include media-breakpoint-up($next) {
flex-wrap: nowrap;
justify-content: flex-start;
.navbar-nav {
flex-direction: row;
.dropdown-menu {
position: absolute;
}
.nav-link {
padding-right: $navbar-nav-link-padding-x;
padding-left: $navbar-nav-link-padding-x;
}
}
.navbar-nav-scroll {
overflow: visible;
}
.navbar-collapse {
display: flex !important; // stylelint-disable-line declaration-no-important
flex-basis: auto;
}
.navbar-toggler {
display: none;
}
.offcanvas-header {
display: none;
}
.offcanvas {
position: inherit;
bottom: 0;
z-index: 1000;
flex-grow: 1;
visibility: visible !important; // stylelint-disable-line declaration-no-important
background-color: transparent;
border-right: 0;
border-left: 0;
@include transition(none);
transform: none;
}
.offcanvas-top,
.offcanvas-bottom {
height: auto;
border-top: 0;
border-bottom: 0;
}
.offcanvas-body {
display: flex;
flex-grow: 0;
padding: 0;
overflow-y: visible;
}
}
}
}
}