Прескокнете до главната содржина Прескокнете на навигацијата со документи
in English

Листа група

Групите со списоци се флексибилна и моќна компонента за прикажување низа содржини. Изменете ги и проширете ги за да поддржуваат речиси секоја содржина во неа.

Основен пример

Најосновната група списоци е неуредена листа со ставки од списокот и соодветни класи. Надоградете го со опциите што следат или со сопствен CSS по потреба.

  • Ставка
  • Втора ставка
  • Трета ставка
  • Четврта ставка
  • И петти
<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>

Активни ставки

Додајте .activeво a .list-group-itemза да го покажете моменталниот активен избор.

  • Активна ставка
  • Втора ставка
  • Трета ставка
  • Четврта ставка
  • И петти
<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>

Оневозможени ставки

Додајте .disabledво a .list-group-itemза да изгледа оневозможено. Забележете дека некои елементи со .disabledќе бараат и приспособен JavaScript за целосно да ги оневозможи нивните настани за кликнување (на пр., врски).

  • Оневозможена ставка
  • Втора ставка
  • Трета ставка
  • Четврта ставка
  • И петти
<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>

Користете <a>s или <button>s за да креирате акциони групни ставки од списокот со подвижни, оневозможени и активни состојби со додавање .list-group-item-action. Ги издвојуваме овие псевдо-класи за да се осигураме дека групите списоци направени од неинтерактивни елементи (како што <li>се s или <div>s) не обезбедуваат прифатливост на кликнување или допир.

Погрижете се да не ги користите стандардните .btnкласи овде .

<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 class="list-group-item list-group-item-action disabled">A disabled link item</a>
</div>

Со <button>s, можете исто така да го користите disabledатрибутот наместо .disabledкласата. За жал, <a>не го поддржуваат оневозможениот атрибут.

<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>

Исплакнете

Додајте .list-group-flushза да отстраните некои граници и заоблени агли за да ги прикажете групните ставки од раб до раб во родителскиот контејнер (на пр. картички).

  • Ставка
  • Втора ставка
  • Трета ставка
  • Четврта ставка
  • И петти
<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>

Нумерирани

Додадете ја .list-group-numberedкласата на модификатор (и по избор користете <ol>елемент) за да се вклучите во ставките од групата со нумерирани список. Броевите се генерираат преку CSS (за разлика од <ol>стандардниот стил на прелистувачот) за подобро сместување во ставките на групата од списокот и за подобро прилагодување.

Броевите се генерираат со counter-resetна <ol>, а потоа стилизирани и поставени со ::beforeпсевдоелемент на <li>со counter-incrementи content.

  1. Ставка од списокот
  2. Ставка од списокот
  3. Ставка од списокот
<ol class="list-group list-group-numbered">
  <li class="list-group-item">A list item</li>
  <li class="list-group-item">A list item</li>
  <li class="list-group-item">A list item</li>
</ol>

Овие работат одлично и со прилагодена содржина.

  1. Поднаслов
    Содржина за ставка од списокот
    14
  2. Поднаслов
    Содржина за ставка од списокот
    14
  3. Поднаслов
    Содржина за ставка од списокот
    14
<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>
      Content for list item
    </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>
      Content for list item
    </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>
      Content for list item
    </div>
    <span class="badge bg-primary rounded-pill">14</span>
  </li>
</ol>

Хоризонтална

Додајте .list-group-horizontalза да го промените распоредот на ставките од групата од списокот од вертикална во хоризонтална низ сите точки на прекин. Алтернативно, изберете одговорна варијанта .list-group-horizontal-{sm|md|lg|xl|xxl}за да ја направите групата списоци хоризонтална почнувајќи од таа точка на прекин min-width. Моментално хоризонталните групи на списоци не можат да се комбинираат со групите за флеш листа.

ПроСовет: Сакате групни ставки од списокот со еднаква ширина кога се хоризонтални? Додадете .flex-fillво секоја ставка од групата на списокот.

  • Ставка
  • Втора ставка
  • Трета ставка
  • Ставка
  • Втора ставка
  • Трета ставка
  • Ставка
  • Втора ставка
  • Трета ставка
  • Ставка
  • Втора ставка
  • Трета ставка
  • Ставка
  • Втора ставка
  • Трета ставка
  • Ставка
  • Втора ставка
  • Трета ставка
<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>

Контекстуални часови

Користете контекстуални класи за да стилизирате ставки од списокот со статусна позадина и боја.

  • Едноставна стандардна групна ставка од списокот
  • Едноставна групна ставка од примарна листа
  • Едноставна споредна ставка од група од списокот
  • Едноставна групна ставка од списокот за успех
  • Едноставна групна ставка од списокот на опасност
  • Едноставна групна ставка од списокот за предупредување
  • Едноставна групна ставка од списокот со информации
  • Едноставна групна ставка со светла листа
  • Едноставна групна ставка од темна листа
<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>

Контекстуалните часови работат и со .list-group-item-action. Забележете го додавањето на стиловите на лебдење овде што не се присутни во претходниот пример. Поддржана е и .activeдржавата; примени го за да означи активен избор на ставка од група од контекстуална листа.

<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>
Пренесување значење на помошните технологии

Користењето боја за додавање значење обезбедува само визуелна индикација, која нема да биде пренесена до корисниците на помошни технологии - како што се читачите на екранот. Осигурајте се дека информациите означени со бојата се или очигледни од самата содржина (на пр. видлив текст), или се вклучени преку алтернативни средства, како што е дополнителен текст скриен со .visually-hiddenкласата.

Со беџови

Додајте значки на која било ставка од групата список за да ги прикажете непрочитаните брои, активности и повеќе со помош на некои комунални услуги .

  • Ставка од списокот14
  • Втора ставка од списокот2
  • Трета ставка од списокот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>

Прилагодена содржина

Додајте речиси секој HTML во себе, дури и за групите поврзани со списоци како оваа подолу, со помош на услужните програми на flexbox .

<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>

Поле за избор и радија

Поставете ги полињата за избор и радијата на Bootstrap во ставките на групата од списокот и приспособете ги по потреба. Можете да ги користите без <label>s, но не заборавајте да вклучите aria-labelатрибут и вредност за пристапност.

  • Прво поле за избор
  • Второ поле за избор
  • Трето поле за избор
  • Четврто поле за избор
  • Петто поле за избор
<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>

И ако сакате <label>s како .list-group-itemза големи погодени области, можете да го направите и тоа.

<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>

Сас

Променливи

$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;

Мешавини

Се користи во комбинација со $theme-colorsза генерирање на класи на контекстуални варијанти за .list-group-items.

@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;
      }
    }
  }
}

Јамка

Јамка што ги генерира класите на модификаторите со list-group-item-variant()миксинот.

// 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

Користете го приклучокот за јазичиња JavaScript - вклучете го поединечно или преку компајлираната bootstrap.jsдатотека - за да ја проширите нашата група списоци за да креирате табли со локална содржина.

<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>

Користење на атрибути на податоци

Можете да активирате групна навигација со список без да пишувате JavaScript со едноставно назначување data-bs-toggle="list"или на елемент. Користете ги овие атрибути на податоци на .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>

Преку JavaScript

Овозможете ставка од списокот со јазичиња преку JavaScript (секоја ставка од списокот треба да се активира поединечно):

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()
  })
})

Можете да активирате поединечни ставки од списокот на неколку начини:

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на секоја .tab-pane. Првиот таб на јазичиња, исто така, мора .showда ја направи видлива почетната содржина.

<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>

Методи

constructor

Активира елемент од списокот и контејнер за содржина. Јазичето треба да има или data-bs-targetили hrefтаргетирање контејнерски јазол во 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>

покажуваат

Ја избира дадената ставка од списокот и го прикажува нејзиното поврзано окно. Секоја друга ставка од списокот што била претходно избрана станува неизбрана и нејзината поврзана окна е скриена. Се враќа кај повикувачот пред навистина да се прикаже окното со јазичиња (на пример, пред да се shown.bs.tabслучи настанот).

  var someListItemEl = document.querySelector('#someListItem')
  var tab = new bootstrap.Tab(someListItemEl)

  tab.show()

располага

Уништува јазичето на елементот.

getInstance

Статички метод кој ви овозможува да го добиете примерот на јазичето поврзан со елементот DOM

var triggerEl = document.querySelector('#trigger')
var tab = bootstrap.Tab.getInstance(triggerEl) // Returns a Bootstrap tab instance

getOrCreateInstance

Статичен метод кој ви овозможува да го добиете примерот на јазичето поврзан со елемент DOM или да создадете нов во случај да не е иницијализиран

var triggerEl = document.querySelector('#trigger')
var tab = bootstrap.Tab.getOrCreateInstance(triggerEl) // Returns a Bootstrap tab instance

Настани

Кога се прикажува нова картичка, настаните се активираат по следниот редослед:

  1. hide.bs.tab(на тековното активно јазиче)
  2. show.bs.tab(на картичката што треба да се прикаже)
  3. hidden.bs.tab(на претходната активна картичка, истата како и за hide.bs.tabнастанот)
  4. shown.bs.tab(на ново-активното штотуку прикажано јазиче, исто како и за show.bs.tabнастанот)

Ако ниту една картичка веќе не била активна, настаните hide.bs.tabи нема да се активираат.hidden.bs.tab

Тип на настан Опис
show.bs.tab Овој настан се вклучува на прикажување на јазичиња, но пред да се прикаже новата картичка. Користете event.targetи event.relatedTargetза да го насочите активното јазиче и претходното активно јазиче (ако е достапно), соодветно.
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.
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
  })
}