Listahópur
Listahópar eru sveigjanlegur og öflugur hluti til að birta röð af efni. Breyttu og framlengdu þau til að styðja nánast hvaða efni sem er innan.
Grunndæmi
Einfaldasti listahópurinn er óraðaður listi með listaatriðum og réttum flokkum. Byggðu á því með valkostunum sem fylgja, eða með eigin CSS eftir þörfum.
- Atriði
- Annað atriði
- Þriðja atriðið
- Fjórða atriðið
- Og sú fimmta
<ul class="list-group">
<li class="list-group-item">An item</li>
<li class="list-group-item">A second item</li>
<li class="list-group-item">A third item</li>
<li class="list-group-item">A fourth item</li>
<li class="list-group-item">And a fifth one</li>
</ul>
Virkir hlutir
Bættu .active
við a .list-group-item
til að gefa til kynna virka valið.
- Virkt atriði
- A second item
- A third item
- A fourth item
- And a fifth one
<ul class="list-group">
<li class="list-group-item active" aria-current="true">An active item</li>
<li class="list-group-item">A second item</li>
<li class="list-group-item">A third item</li>
<li class="list-group-item">A fourth item</li>
<li class="list-group-item">And a fifth one</li>
</ul>
Óvirk atriði
Bættu .disabled
við a .list-group-item
til að láta það líta út fyrir að vera óvirkt. Athugaðu að sumir þættir með .disabled
munu einnig krefjast sérsniðins JavaScript til að slökkva á smellaviðburðum sínum að fullu (td tengla).
- Óvirkur hlutur
- A second item
- A third item
- A fourth item
- And a fifth one
<ul class="list-group">
<li class="list-group-item disabled" aria-disabled="true">A disabled item</li>
<li class="list-group-item">A second item</li>
<li class="list-group-item">A third item</li>
<li class="list-group-item">A fourth item</li>
<li class="list-group-item">And a fifth one</li>
</ul>
Tenglar og hnappar
Notaðu <a>
s eða <button>
s til að búa til aðgerðahæf listahópatriði með sveima, óvirka og virka stöðu með því að bæta við .list-group-item-action
. Við aðskiljum þessa gerviflokka til að tryggja að listahópar úr ógagnvirkum þáttum (eins og <li>
s eða <div>
s) veiti ekki smelli eða snertingu.
Vertu viss um að nota ekki staðlaða .btn
flokka hér .
<div class="list-group">
<a href="#" class="list-group-item list-group-item-action active" aria-current="true">
The current link item
</a>
<a href="#" class="list-group-item list-group-item-action">A second link item</a>
<a href="#" class="list-group-item list-group-item-action">A third link item</a>
<a href="#" class="list-group-item list-group-item-action">A fourth link item</a>
<a href="#" class="list-group-item list-group-item-action disabled" tabindex="-1" aria-disabled="true">A disabled link item</a>
</div>
Með <button>
s geturðu líka notað disabled
eiginleikann í stað .disabled
flokksins. Því miður <a>
styður s ekki disabled eiginleikann.
<div class="list-group">
<button type="button" class="list-group-item list-group-item-action active" aria-current="true">
The current button
</button>
<button type="button" class="list-group-item list-group-item-action">A second item</button>
<button type="button" class="list-group-item list-group-item-action">A third button item</button>
<button type="button" class="list-group-item list-group-item-action">A fourth button item</button>
<button type="button" class="list-group-item list-group-item-action" disabled>A disabled button item</button>
</div>
Skola
Bættu við .list-group-flush
til að fjarlægja nokkra ramma og ávöl horn til að birta listahópsatriði frá brún til brún í yfirgeymi (td spjöld).
- Atriði
- Annað atriði
- Þriðja atriðið
- Fjórða atriðið
- Og sú fimmta
<ul class="list-group list-group-flush">
<li class="list-group-item">An item</li>
<li class="list-group-item">A second item</li>
<li class="list-group-item">A third item</li>
<li class="list-group-item">A fourth item</li>
<li class="list-group-item">And a fifth one</li>
</ul>
Númerað
Bættu við .list-group-numbered
breytingaflokknum (og notaðu mögulega <ol>
stak) til að velja númeraða listahópa. Tölur eru búnar til með CSS (öfugt við <ol>
sjálfgefna vafrastíl) fyrir betri staðsetningu innan listahópa og til að gera kleift að aðlaga betur.
Tölur eru búnar til af counter-reset
á <ol>
, og síðan stílaðar og settar með ::before
gervi-einingu á <li>
með counter-increment
og content
.
- Cras justo odio
- Cras justo odio
- Cras justo odio
<ol class="list-group list-group-numbered">
<li class="list-group-item">Cras justo odio</li>
<li class="list-group-item">Cras justo odio</li>
<li class="list-group-item">Cras justo odio</li>
</ol>
Þetta virkar líka frábærlega með sérsniðnu efni.
-
UndirfyrirsögnCras justo odio
-
UndirfyrirsögnCras justo odio
-
UndirfyrirsögnCras justo odio
<ol class="list-group list-group-numbered">
<li class="list-group-item d-flex justify-content-between align-items-start">
<div class="ms-2 me-auto">
<div class="fw-bold">Subheading</div>
Cras justo odio
</div>
<span class="badge bg-primary rounded-pill">14</span>
</li>
<li class="list-group-item d-flex justify-content-between align-items-start">
<div class="ms-2 me-auto">
<div class="fw-bold">Subheading</div>
Cras justo odio
</div>
<span class="badge bg-primary rounded-pill">14</span>
</li>
<li class="list-group-item d-flex justify-content-between align-items-start">
<div class="ms-2 me-auto">
<div class="fw-bold">Subheading</div>
Cras justo odio
</div>
<span class="badge bg-primary rounded-pill">14</span>
</li>
</ol>
Lárétt
Bæta við .list-group-horizontal
til að breyta uppsetningu listahópaliða úr lóðréttum í lárétt yfir alla brotpunkta. Að öðrum kosti, veldu móttækilegt afbrigði .list-group-horizontal-{sm|md|lg|xl|xxl}
til að gera listahóp láréttan og byrjar á þeim brotpunkti min-width
. Sem stendur er ekki hægt að sameina lárétta listahópa með sléttum listahópum.
ProTip: Viltu jafnbreiða listahópa þegar þeir eru láréttir? Bæta .flex-fill
við hvert listahópatriði.
- Atriði
- Annað atriði
- Þriðja atriðið
- Atriði
- Annað atriði
- Þriðja atriðið
- Atriði
- Annað atriði
- Þriðja atriðið
- Atriði
- Annað atriði
- Þriðja atriðið
- Atriði
- Annað atriði
- Þriðja atriðið
- Atriði
- Annað atriði
- Þriðja atriðið
<ul class="list-group list-group-horizontal">
<li class="list-group-item">An item</li>
<li class="list-group-item">A second item</li>
<li class="list-group-item">A third item</li>
</ul>
<ul class="list-group list-group-horizontal-sm">
<li class="list-group-item">An item</li>
<li class="list-group-item">A second item</li>
<li class="list-group-item">A third item</li>
</ul>
<ul class="list-group list-group-horizontal-md">
<li class="list-group-item">An item</li>
<li class="list-group-item">A second item</li>
<li class="list-group-item">A third item</li>
</ul>
<ul class="list-group list-group-horizontal-lg">
<li class="list-group-item">An item</li>
<li class="list-group-item">A second item</li>
<li class="list-group-item">A third item</li>
</ul>
<ul class="list-group list-group-horizontal-xl">
<li class="list-group-item">An item</li>
<li class="list-group-item">A second item</li>
<li class="list-group-item">A third item</li>
</ul>
<ul class="list-group list-group-horizontal-xxl">
<li class="list-group-item">An item</li>
<li class="list-group-item">A second item</li>
<li class="list-group-item">A third item</li>
</ul>
Samhengisnámskeið
Notaðu samhengistíma til að stíla listaatriði með yfirburða bakgrunni og lit.
- Einfalt sjálfgefið listahópatriði
- Einfalt aðallistahópatriði
- Einfalt aukalista hópatriði
- Einfalt hópatriði á árangurslista
- Einfalt hættulista hópatriði
- Einfalt hópatriði viðvörunarlista
- Einfalt upplýsingalista hópatriði
- Einfalt ljósalista hópatriði
- Einfalt hópatriði á dökkum lista
<ul class="list-group">
<li class="list-group-item">A simple default list group item</li>
<li class="list-group-item list-group-item-primary">A simple primary list group item</li>
<li class="list-group-item list-group-item-secondary">A simple secondary list group item</li>
<li class="list-group-item list-group-item-success">A simple success list group item</li>
<li class="list-group-item list-group-item-danger">A simple danger list group item</li>
<li class="list-group-item list-group-item-warning">A simple warning list group item</li>
<li class="list-group-item list-group-item-info">A simple info list group item</li>
<li class="list-group-item list-group-item-light">A simple light list group item</li>
<li class="list-group-item list-group-item-dark">A simple dark list group item</li>
</ul>
Samhengisnámskeið vinna einnig með .list-group-item-action
. Athugaðu viðbótina á sveimstílunum hér sem ekki eru til staðar í fyrra dæminu. Einnig er stutt við .active
ríkið; notaðu það til að gefa til kynna virkt val á samhengislistahópsatriði.
<div class="list-group">
<a href="#" class="list-group-item list-group-item-action">A simple default list group item</a>
<a href="#" class="list-group-item list-group-item-action list-group-item-primary">A simple primary list group item</a>
<a href="#" class="list-group-item list-group-item-action list-group-item-secondary">A simple secondary list group item</a>
<a href="#" class="list-group-item list-group-item-action list-group-item-success">A simple success list group item</a>
<a href="#" class="list-group-item list-group-item-action list-group-item-danger">A simple danger list group item</a>
<a href="#" class="list-group-item list-group-item-action list-group-item-warning">A simple warning list group item</a>
<a href="#" class="list-group-item list-group-item-action list-group-item-info">A simple info list group item</a>
<a href="#" class="list-group-item list-group-item-action list-group-item-light">A simple light list group item</a>
<a href="#" class="list-group-item list-group-item-action list-group-item-dark">A simple dark list group item</a>
</div>
Að miðla merkingu til hjálpartækja
Notkun lita til að bæta við merkingu gefur aðeins sjónræna vísbendingu, sem verður ekki miðlað til notenda hjálpartækni - eins og skjálesara. Gakktu úr skugga um að upplýsingar sem merktar eru með litnum séu annaðhvort augljósar af innihaldinu sjálfu (td sýnilegum texta), eða séu innifaldar með öðrum hætti, svo sem viðbótartexta sem er falinn í .visually-hidden
bekknum.
Með merkjum
Bættu merkjum við hvaða listahóp sem er til að sýna ólesna fjölda, virkni og fleira með hjálp sumra tóla .
- Listaatriði14
- Annað listaatriði2
- Þriðja listaatriðið1
<ul class="list-group">
<li class="list-group-item d-flex justify-content-between align-items-center">
A list item
<span class="badge bg-primary rounded-pill">14</span>
</li>
<li class="list-group-item d-flex justify-content-between align-items-center">
A second list item
<span class="badge bg-primary rounded-pill">2</span>
</li>
<li class="list-group-item d-flex justify-content-between align-items-center">
A third list item
<span class="badge bg-primary rounded-pill">1</span>
</li>
</ul>
Sérsniðið efni
Bættu við næstum hvaða HTML sem er innan, jafnvel fyrir tengda listahópa eins og þann hér að neðan, með hjálp flexbox tóla .
<div class="list-group">
<a href="#" class="list-group-item list-group-item-action active" aria-current="true">
<div class="d-flex w-100 justify-content-between">
<h5 class="mb-1">List group item heading</h5>
<small>3 days ago</small>
</div>
<p class="mb-1">Some placeholder content in a paragraph.</p>
<small>And some small print.</small>
</a>
<a href="#" class="list-group-item list-group-item-action">
<div class="d-flex w-100 justify-content-between">
<h5 class="mb-1">List group item heading</h5>
<small class="text-muted">3 days ago</small>
</div>
<p class="mb-1">Some placeholder content in a paragraph.</p>
<small class="text-muted">And some muted small print.</small>
</a>
<a href="#" class="list-group-item list-group-item-action">
<div class="d-flex w-100 justify-content-between">
<h5 class="mb-1">List group item heading</h5>
<small class="text-muted">3 days ago</small>
</div>
<p class="mb-1">Some placeholder content in a paragraph.</p>
<small class="text-muted">And some muted small print.</small>
</a>
</div>
Gátreitir og útvarp
Settu gátreiti Bootstrap og útvarpstæki innan listahópa og aðlaga eftir þörfum. Þú getur notað þau án <label>
s, en vinsamlegast mundu að hafa aria-label
eiginleika og gildi fyrir aðgengi.
- Fyrsti gátreiturinn
- Annar gátreitur
- Þriðji gátreitur
- Fjórði gátreiturinn
- Fimmti gátreiturinn
<ul class="list-group">
<li class="list-group-item">
<input class="form-check-input me-1" type="checkbox" value="" aria-label="...">
First checkbox
</li>
<li class="list-group-item">
<input class="form-check-input me-1" type="checkbox" value="" aria-label="...">
Second checkbox
</li>
<li class="list-group-item">
<input class="form-check-input me-1" type="checkbox" value="" aria-label="...">
Third checkbox
</li>
<li class="list-group-item">
<input class="form-check-input me-1" type="checkbox" value="" aria-label="...">
Fourth checkbox
</li>
<li class="list-group-item">
<input class="form-check-input me-1" type="checkbox" value="" aria-label="...">
Fifth checkbox
</li>
</ul>
Og ef þú vilt <label>
vera .list-group-item
fyrir stór höggsvæði geturðu gert það líka.
<div class="list-group">
<label class="list-group-item">
<input class="form-check-input me-1" type="checkbox" value="">
First checkbox
</label>
<label class="list-group-item">
<input class="form-check-input me-1" type="checkbox" value="">
Second checkbox
</label>
<label class="list-group-item">
<input class="form-check-input me-1" type="checkbox" value="">
Third checkbox
</label>
<label class="list-group-item">
<input class="form-check-input me-1" type="checkbox" value="">
Fourth checkbox
</label>
<label class="list-group-item">
<input class="form-check-input me-1" type="checkbox" value="">
Fifth checkbox
</label>
</div>
Sass
Breytur
$list-group-color: $gray-900;
$list-group-bg: $white;
$list-group-border-color: rgba($black, .125);
$list-group-border-width: $border-width;
$list-group-border-radius: $border-radius;
$list-group-item-padding-y: $spacer * .5;
$list-group-item-padding-x: $spacer;
$list-group-item-bg-scale: -80%;
$list-group-item-color-scale: 40%;
$list-group-hover-bg: $gray-100;
$list-group-active-color: $component-active-color;
$list-group-active-bg: $component-active-bg;
$list-group-active-border-color: $list-group-active-bg;
$list-group-disabled-color: $gray-600;
$list-group-disabled-bg: $list-group-bg;
$list-group-action-color: $gray-700;
$list-group-action-hover-color: $list-group-action-color;
$list-group-action-active-color: $body-color;
$list-group-action-active-bg: $gray-200;
Mixins
Notað ásamt $theme-colors
til að búa til samhengisafbrigðisflokka fyrir .list-group-item
s.
@mixin list-group-item-variant($state, $background, $color) {
.list-group-item-#{$state} {
color: $color;
background-color: $background;
&.list-group-item-action {
&:hover,
&:focus {
color: $color;
background-color: shade-color($background, 10%);
}
&.active {
color: $white;
background-color: $color;
border-color: $color;
}
}
}
}
Lykkju
Lykka sem býr til breytiklasa með list-group-item-variant()
mixinu.
// List group contextual variants
//
// Add modifier classes to change text and background color on individual items.
// Organizationally, this must come after the `:hover` states.
@each $state, $value in $theme-colors {
$list-group-variant-bg: shift-color($value, $list-group-item-bg-scale);
$list-group-variant-color: shift-color($value, $list-group-item-color-scale);
@if (contrast-ratio($list-group-variant-bg, $list-group-variant-color) < $min-contrast-ratio) {
$list-group-variant-color: mix($value, color-contrast($list-group-variant-bg), abs($list-group-item-color-scale));
}
@include list-group-item-variant($state, $list-group-variant-bg, $list-group-variant-color);
}
JavaScript hegðun
Notaðu JavaScript viðbótina fyrir flipann - láttu það fylgja með fyrir sig eða í gegnum samsettu bootstrap.js
skrána - til að stækka listahópinn okkar til að búa til töflurúður af staðbundnu efni.
<div class="row">
<div class="col-4">
<div class="list-group" id="list-tab" role="tablist">
<a class="list-group-item list-group-item-action active" id="list-home-list" data-bs-toggle="list" href="#list-home" role="tab" aria-controls="list-home">Home</a>
<a class="list-group-item list-group-item-action" id="list-profile-list" data-bs-toggle="list" href="#list-profile" role="tab" aria-controls="list-profile">Profile</a>
<a class="list-group-item list-group-item-action" id="list-messages-list" data-bs-toggle="list" href="#list-messages" role="tab" aria-controls="list-messages">Messages</a>
<a class="list-group-item list-group-item-action" id="list-settings-list" data-bs-toggle="list" href="#list-settings" role="tab" aria-controls="list-settings">Settings</a>
</div>
</div>
<div class="col-8">
<div class="tab-content" id="nav-tabContent">
<div class="tab-pane fade show active" id="list-home" role="tabpanel" aria-labelledby="list-home-list">...</div>
<div class="tab-pane fade" id="list-profile" role="tabpanel" aria-labelledby="list-profile-list">...</div>
<div class="tab-pane fade" id="list-messages" role="tabpanel" aria-labelledby="list-messages-list">...</div>
<div class="tab-pane fade" id="list-settings" role="tabpanel" aria-labelledby="list-settings-list">...</div>
</div>
</div>
</div>
Notkun gagnaeiginleika
Þú getur virkjað hópleiðsögn á lista án þess að skrifa JavaScript með því einfaldlega að tilgreina data-bs-toggle="list"
eða á frumefni. Notaðu þessar gagnaeiginleikar á .list-group-item
.
<div role="tabpanel">
<!-- List group -->
<div class="list-group" id="myList" role="tablist">
<a class="list-group-item list-group-item-action active" data-bs-toggle="list" href="#home" role="tab">Home</a>
<a class="list-group-item list-group-item-action" data-bs-toggle="list" href="#profile" role="tab">Profile</a>
<a class="list-group-item list-group-item-action" data-bs-toggle="list" href="#messages" role="tab">Messages</a>
<a class="list-group-item list-group-item-action" data-bs-toggle="list" href="#settings" role="tab">Settings</a>
</div>
<!-- Tab panes -->
<div class="tab-content">
<div class="tab-pane active" id="home" role="tabpanel">...</div>
<div class="tab-pane" id="profile" role="tabpanel">...</div>
<div class="tab-pane" id="messages" role="tabpanel">...</div>
<div class="tab-pane" id="settings" role="tabpanel">...</div>
</div>
</div>
Með JavaScript
Virkjaðu listaatriði með flipa með JavaScript (hverja listaatriði þarf að virkja fyrir sig):
var triggerTabList = [].slice.call(document.querySelectorAll('#myTab a'))
triggerTabList.forEach(function (triggerEl) {
var tabTrigger = new bootstrap.Tab(triggerEl)
triggerEl.addEventListener('click', function (event) {
event.preventDefault()
tabTrigger.show()
})
})
Þú getur virkjað einstaka listaatriði á nokkra vegu:
var triggerEl = document.querySelector('#myTab a[href="#profile"]')
bootstrap.Tab.getInstance(triggerEl).show() // Select tab by name
var triggerFirstTabEl = document.querySelector('#myTab li:first-child a')
bootstrap.Tab.getInstance(triggerFirstTabEl).show() // Select first tab
Fade áhrif
Til að láta flipaborðið hverfa inn skaltu bæta .fade
við hvern .tab-pane
. Fyrsta fliparúðan verður einnig .show
að gera upphafsefnið sýnilegt.
<div class="tab-content">
<div class="tab-pane fade show active" id="home" role="tabpanel">...</div>
<div class="tab-pane fade" id="profile" role="tabpanel">...</div>
<div class="tab-pane fade" id="messages" role="tabpanel">...</div>
<div class="tab-pane fade" id="settings" role="tabpanel">...</div>
</div>
Aðferðir
constructor
Virkjar listaatriði og innihaldsílát. Tab ætti að hafa annað hvort a data-bs-target
eða href
miða á gámahnút í DOM.
<div class="list-group" id="myList" role="tablist">
<a class="list-group-item list-group-item-action active" data-bs-toggle="list" href="#home" role="tab">Home</a>
<a class="list-group-item list-group-item-action" data-bs-toggle="list" href="#profile" role="tab">Profile</a>
<a class="list-group-item list-group-item-action" data-bs-toggle="list" href="#messages" role="tab">Messages</a>
<a class="list-group-item list-group-item-action" data-bs-toggle="list" href="#settings" role="tab">Settings</a>
</div>
<div class="tab-content">
<div class="tab-pane active" id="home" role="tabpanel">...</div>
<div class="tab-pane" id="profile" role="tabpanel">...</div>
<div class="tab-pane" id="messages" role="tabpanel">...</div>
<div class="tab-pane" id="settings" role="tabpanel">...</div>
</div>
<script>
var firstTabEl = document.querySelector('#myTab a:last-child')
var firstTab = new bootstrap.Tab(firstTabEl)
firstTab.show()
</script>
show
Velur tiltekið listaatriði og sýnir tengdan glugga. Annað listaatriði sem áður var valið verður óvalið og tengdur gluggi hans er falinn. Snýr aftur til þess sem hringir áður en flipaglugginn hefur verið sýndur (til dæmis áður en shown.bs.tab
atburðurinn á sér stað).
var someListItemEl = document.querySelector('#someListItem')
var tab = new bootstrap.Tab(someListItemEl)
tab.show()
dispose
Eyðir flipa frumefnis.
getInstance
Static aðferð sem gerir þér kleift að fá flipatilvikið tengt DOM frumefni
var triggerEl = document.querySelector('#trigger')
var tab = bootstrap.Tab.getInstance(triggerEl) // Returns a Bootstrap tab instance
getOrCreateInstance
Statísk aðferð sem gerir þér kleift að fá flipatilvikið tengt DOM-einingu, eða búa til nýjan ef það var ekki frumstillt
var triggerEl = document.querySelector('#trigger')
var tab = bootstrap.Tab.getOrCreateInstance(triggerEl) // Returns a Bootstrap tab instance
Viðburðir
Þegar nýr flipi er sýndur kvikna atburðir í eftirfarandi röð:
hide.bs.tab
(á núverandi virka flipa)show.bs.tab
(á flipanum sem á að sýna)hidden.bs.tab
(á fyrri virka flipanum, sá sami og fyrirhide.bs.tab
viðburðinn)shown.bs.tab
(á flipanum sem nýlega var sýndur, sá sami og fyrirshow.bs.tab
viðburðinn)
Ef enginn flipi var þegar virkur verða hide.bs.tab
og hidden.bs.tab
viðburðir ekki ræstir.
Tegund viðburðar | Lýsing |
---|---|
show.bs.tab |
Þessi atburður ræsir á flipasýningu, en áður en nýi flipi hefur verið sýndur. Notaðu event.target og event.relatedTarget til að miða á virka flipann og fyrri virka flipann (ef tiltækur) í sömu röð. |
shown.bs.tab |
Þessi atburður ræsir á flipasýningu eftir að flipi hefur verið sýndur. Notaðu event.target og event.relatedTarget til að miða á virka flipann og fyrri virka flipann (ef tiltækur) í sömu röð. |
hide.bs.tab |
Þessi atburður ræsir þegar nýjan flipa á að sýna (og þar með á að fela fyrri virka flipa). Notaðu event.target og event.relatedTarget til að miða á núverandi virka flipa og nýja flipa sem bráðum verður virkur, í sömu röð. |
hidden.bs.tab |
Þessi atburður ræsir eftir að nýr flipi er sýndur (og þar með er fyrri virki flipinn falinn). Notaðu event.target og event.relatedTarget til að miða á fyrri virka flipann og nýja virka flipann, í sömu röð. |
var tabElms = document.querySelectorAll('a[data-bs-toggle="list"]')
tabElms.forEach(function(tabElm) {
tabElm.addEventListener('shown.bs.tab', function (event) {
event.target // newly activated tab
event.relatedTarget // previous active tab
})
}