Ομάδα λίστας
Οι ομάδες λιστών είναι ένα ευέλικτο και ισχυρό στοιχείο για την εμφάνιση μιας σειράς περιεχομένου. Τροποποιήστε και επεκτείνετε τα για να υποστηρίζουν σχεδόν οποιοδήποτε περιεχόμενο.
Βασικό παράδειγμα
Η πιο βασική ομάδα λίστας είναι μια μη ταξινομημένη λίστα με στοιχεία λίστας και τις κατάλληλες κλάσεις. Βασιστείτε σε αυτό με τις επιλογές που ακολουθούν ή με το δικό σας 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
σε ένα .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-horizontal
για αλλαγή της διάταξης των στοιχείων της ομάδας λίστας από κάθετη σε οριζόντια σε όλα τα σημεία διακοπής. Εναλλακτικά, επιλέξτε μια παραλλαγή που ανταποκρίνεται .list-group-horizontal-{sm|md|lg|xl}
για να κάνετε μια ομάδα λίστας οριζόντια ξεκινώντας από αυτό το σημείο διακοπής min-width
. Επί του παρόντος , οι οριζόντιες ομάδες λιστών δεν μπορούν να συνδυαστούν με ομάδες καταλόγου.
ProTip: Θέλετε στοιχεία ομάδας ίσου πλάτους όταν είναι οριζόντια; Προσθήκη .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">
<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>
Μετάδοση νοήματος στις υποστηρικτικές τεχνολογίες
Η χρήση χρώματος για να προσθέσετε νόημα παρέχει μόνο μια οπτική ένδειξη, η οποία δεν θα μεταδοθεί στους χρήστες βοηθητικών τεχνολογιών – όπως οι συσκευές ανάγνωσης οθόνης. Βεβαιωθείτε ότι οι πληροφορίες που υποδηλώνονται με το χρώμα είναι είτε προφανείς από το ίδιο το περιεχόμενο (π.χ. το ορατό κείμενο), είτε περιλαμβάνονται με εναλλακτικά μέσα, όπως πρόσθετο κείμενο που είναι κρυμμένο με την .sr-only
τάξη.
Με κονκάρδες
Προσθέστε σήματα σε οποιοδήποτε στοιχείο της ομάδας λίστας για να εμφανίσετε τις μη αναγνωσμένες μετρήσεις, τη δραστηριότητα και άλλα με τη βοήθεια ορισμένων βοηθητικών προγραμμάτων .
- Ένα στοιχείο λίστας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 badge-primary badge-pill">14</span>
</li>
<li class="list-group-item d-flex justify-content-between align-items-center">
A second list item
<span class="badge badge-primary badge-pill">2</span>
</li>
<li class="list-group-item d-flex justify-content-between align-items-center">
A third list item
<span class="badge badge-primary badge-pill">1</span>
</li>
</ul>
Προσαρμοσμένο περιεχόμενο
Προσθέστε σχεδόν οποιοδήποτε HTML μέσα, ακόμη και για συνδεδεμένες ομάδες λιστών όπως η παρακάτω, με τη βοήθεια των βοηθητικών προγραμμάτων flexbox .
Επικεφαλίδα στοιχείου ομάδας λίστας
πριν από 3 ημέρεςΟρισμένο περιεχόμενο placeholder σε μια παράγραφο.
Και μερικά μικρά γράμματα.Επικεφαλίδα στοιχείου ομάδας λίστας
πριν από 3 ημέρεςΟρισμένο περιεχόμενο placeholder σε μια παράγραφο.
Και μερικά σίγαστα μικρά γράμματα.Επικεφαλίδα στοιχείου ομάδας λίστας
πριν από 3 ημέρεςΟρισμένο περιεχόμενο placeholder σε μια παράγραφο.
Και μερικά σίγαστα μικρά γράμματα.<div class="list-group">
<a href="#" class="list-group-item list-group-item-action active">
<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>
Συμπεριφορά 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-toggle="list" href="#list-home" role="tab" aria-controls="home">Home</a>
<a class="list-group-item list-group-item-action" id="list-profile-list" data-toggle="list" href="#list-profile" role="tab" aria-controls="profile">Profile</a>
<a class="list-group-item list-group-item-action" id="list-messages-list" data-toggle="list" href="#list-messages" role="tab" aria-controls="messages">Messages</a>
<a class="list-group-item list-group-item-action" id="list-settings-list" data-toggle="list" href="#list-settings" role="tab" aria-controls="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-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-toggle="list" href="#home" role="tab">Home</a>
<a class="list-group-item list-group-item-action" data-toggle="list" href="#profile" role="tab">Profile</a>
<a class="list-group-item list-group-item-action" data-toggle="list" href="#messages" role="tab">Messages</a>
<a class="list-group-item list-group-item-action" data-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 (κάθε στοιχείο λίστας πρέπει να ενεργοποιηθεί ξεχωριστά):
$('#myList a').on('click', function (event) {
event.preventDefault()
$(this).tab('show')
})
Μπορείτε να ενεργοποιήσετε μεμονωμένα στοιχεία λίστας με διάφορους τρόπους:
$('#myList a[href="#profile"]').tab('show') // Select tab by name
$('#myList a:first-child').tab('show') // Select first tab
$('#myList a:last-child').tab('show') // Select last tab
$('#myList a:nth-child(3)').tab('show') // Select third 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>
Μέθοδοι
καρτέλα $().
Ενεργοποιεί ένα στοιχείο στοιχείου λίστας και ένα κοντέινερ περιεχομένου. Η καρτέλα πρέπει να έχει είτε έναν data-target
είτε έναν href
κόμβο στόχευσης κοντέινερ στο DOM.
<div class="list-group" id="myList" role="tablist">
<a class="list-group-item list-group-item-action active" data-toggle="list" href="#home" role="tab">Home</a>
<a class="list-group-item list-group-item-action" data-toggle="list" href="#profile" role="tab">Profile</a>
<a class="list-group-item list-group-item-action" data-toggle="list" href="#messages" role="tab">Messages</a>
<a class="list-group-item list-group-item-action" data-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>
$(function () {
$('#myList a:last-child').tab('show')
})
</script>
.tab('show')
Επιλέγει το δεδομένο στοιχείο της λίστας και εμφανίζει το σχετικό παράθυρο. Οποιοδήποτε άλλο στοιχείο λίστας που είχε επιλεγεί προηγουμένως γίνεται μη επιλεγμένο και το συσχετισμένο τμήμα του παραθύρου κρύβεται. Επιστρέφει στον καλούντα πριν εμφανιστεί πραγματικά το παράθυρο καρτέλας (για παράδειγμα, πριν συμβεί το shown.bs.tab
συμβάν).
$('#someListItem').tab('show')
Εκδηλώσεις
Κατά την εμφάνιση μιας νέας καρτέλας, τα συμβάντα ενεργοποιούνται με την ακόλουθη σειρά:
hide.bs.tab
(στην τρέχουσα ενεργή καρτέλα)show.bs.tab
(στην καρτέλα που θα εμφανιστεί)hidden.bs.tab
(στην προηγούμενη ενεργή καρτέλα, η ίδια με τηνhide.bs.tab
εκδήλωση)shown.bs.tab
(στην πρόσφατα ενεργή καρτέλα που μόλις εμφανίστηκε, η ίδια όπως και για τηνshow.bs.tab
εκδήλωση)
Εάν καμία καρτέλα δεν ήταν ήδη ενεργή, τα συμβάντα hide.bs.tab
και hidden.bs.tab
δεν θα ενεργοποιηθούν.
Τύπος συμβάντος | Περιγραφή |
---|---|
show.bs.tab | Αυτό το συμβάν ενεργοποιείται στην εμφάνιση καρτελών, αλλά πριν εμφανιστεί η νέα καρτέλα. Χρησιμοποιήστε event.target και event.relatedTarget για να στοχεύσετε την ενεργή καρτέλα και την προηγούμενη ενεργή καρτέλα (αν είναι διαθέσιμη) αντίστοιχα. |
εμφανίζονται.bs.καρτέλα | Αυτό το συμβάν ενεργοποιείται στην εμφάνιση καρτελών μετά την εμφάνιση μιας καρτέλας. Χρησιμοποιήστε event.target και event.relatedTarget για να στοχεύσετε την ενεργή καρτέλα και την προηγούμενη ενεργή καρτέλα (αν είναι διαθέσιμη) αντίστοιχα. |
καρτέλα hide.bs | Αυτό το συμβάν ενεργοποιείται όταν πρόκειται να εμφανιστεί μια νέα καρτέλα (και επομένως η προηγούμενη ενεργή καρτέλα πρέπει να κρυφτεί). Χρησιμοποιήστε event.target και event.relatedTarget για να στοχεύσετε την τρέχουσα ενεργή καρτέλα και τη νέα καρτέλα που θα ενεργοποιηθεί σύντομα, αντίστοιχα. |
hidden.bs.tab | Αυτό το συμβάν ενεργοποιείται μετά την εμφάνιση μιας νέας καρτέλας (και επομένως η προηγούμενη ενεργή καρτέλα αποκρύπτεται). Χρησιμοποιήστε event.target και event.relatedTarget για να στοχεύσετε την προηγούμενη ενεργή καρτέλα και τη νέα ενεργή καρτέλα, αντίστοιχα. |
$('a[data-toggle="list"]').on('shown.bs.tab', function (event) {
event.target // newly activated tab
event.relatedTarget // previous active tab
})