What is a button Group component?

Bootstrap 5 Knapaggrupper: Fleksibel design

08/01/2023

Rating: 4.07 (2805 votes)
Indholdsfortegnelse

Bootstrap 5 Knapaggrupper: Skab Funktionelle og Responsivt Design

I moderne webudvikling er brugergrænsefladen altafgørende. En af de mest brugbare og ofte oversete komponenter i webdesign er knapaggrupper. Med Bootstrap 5 er det blevet endnu nemmere at implementere elegante og funktionelle knapaggrupper, der tilpasser sig enhver skærmstørrelse. Denne guide vil uddybe, hvad en knapaggruppekomponent er, hvordan du bruger den i Bootstrap 5, og hvordan du skaber responsive oplevelser for dine brugere.

What is a responsive button group in Bootstrap 5?
Responsive button group built with the latest Bootstrap 5. Button group wraps a series of buttons together into a single line (navbar) or stack in a vertical column. Many examples and simple tutorials. Group a series of buttons together on a single line with the button group. Wrap a series of buttons with .btn in .btn-group.

Hvad er en Knapaggruppekomponent?

En knapaggruppekomponent er essentielt en samling af knapper, der er grupperet sammen for at udføre relaterede handlinger eller navigation. Disse knapper kan arrangeres på en enkelt linje, som man ofte ser i navigationslinjer, eller stables lodret i en kolonne. Formålet er at præsentere flere muligheder på en overskuelig og organiseret måde, hvilket forbedrer brugeroplevelsen markant. I Bootstrap 5 er disse grupper nemme at implementere ved at indpakke individuelle knapper med klassen .btn inde i en container med klassen .btn-group.

Grundlæggende Implementering i Bootstrap 5

At skabe en simpel knapaggruppe i Bootstrap 5 er ligetil. Du starter med at definere en container, typisk en <div>, og giver den klassen .btn-group. Inden i denne container placerer du dine individuelle knapper, som hver især skal have Bootstrap's knapklasser som .btn og en farveklasse som .btn-primary, .btn-secondary osv.

Her er et simpelt eksempel:

<div class="btn-group" role="group" aria-label="Basic example"> <button type="button" class="btn btn-primary">Venstre </button> <button type="button" class="btn btn-primary">Midte </button> <button type="button" class="btn btn-primary">Højre </button></div>

I dette eksempel ser vi tre knapper: "Venstre", "Midte" og "Højre", alle samlet i en .btn-group. Det er vigtigt at bemærke tilføjelsen af role="group" og aria-label="Basic example". Disse attributter er essentielle for tilgængelighed, især for brugere af skærmlæsere. De informerer teknologierne om, at disse knapper udgør en gruppe, og giver gruppen en beskrivende etiket.

Responsivitet og Tilpasning

En af de største fordele ved Bootstrap 5's knapaggrupper er deres indbyggede responsivitet. Som standard vil knapperne i en gruppe strække sig for at passe ind i den tilgængelige plads på en enkelt linje. Når skærmbredden bliver for lille, vil knapperne automatisk stable sig lodret for at sikre, at de forbliver brugbare og synlige på mindre enheder som smartphones. Du kan også opnå mere specifik responsiv adfærd ved at bruge Bootstrap's grid-system og utility-klasser.

Størrelsesjustering af Knapaggrupper

Bootstrap 5 tilbyder også muligheder for at justere størrelsen på hele knapaggrupper. I stedet for at anvende størrelsesklasser på hver enkelt knap, kan du tilføje størrelsesklasser som .btn-group-lg, .btn-group-sm til selve .btn-group containeren. Dette giver en ensartet størrelse på alle knapper inden i gruppen.

Eksempler på størrelsesjustering:

Stor størrelse:

<div class="btn-group btn-group-lg" role="group" aria-label="Large button group"> <button type="button" class="btn btn-outline-secondary">Venstre </button> <button type="button" class="btn btn-outline-secondary">Midte </button> <button type="button" class="btn btn-outline-secondary">Højre </button></div>

Standard størrelse:

<div class="btn-group" role="group" aria-label="Default button group"> <button type="button" class="btn btn-outline-secondary">Venstre </button> <button type="button" class="btn btn-outline-secondary">Midte </button> <button type="button" class="btn btn-outline-secondary">Højre </button></div>

Lille størrelse:

<div class="btn-group btn-group-sm" role="group" aria-label="Small button group"> <button type="button" class="btn btn-outline-secondary">Venstre </button> <button type="button" class="btn btn-outline-secondary">Midte </button> <button type="button" class="btn btn-outline-secondary">Højre </button></div>

Outline Knapper

Bootstrap 5 giver også mulighed for at bruge "outlined" knapstilarter. Dette betyder, at kun kanten af knappen er synlig, hvilket giver et mere minimalistisk udseende. Du opnår dette ved at bruge klasser som .btn-outline-primary, .btn-outline-secondary osv. Disse kan kombineres med .btn-group for at skabe stilfulde, udskårne knapaggrupper.

What is Bootstrap BTN-group?
Bootstrap's .btn-group component allows you to use eighter horizontal or vertical styled .btn-group at a time but not both. Use media query and override styles.
<div class="btn-group" role="group" aria-label="Outline example"> <button type="button" class="btn btn-outline-primary">Venstre </button> <button type="button" class="btn btn-outline-primary">Midte </button> <button type="button" class="btn btn-outline-primary">Højre </button></div>

Knapværktøjer (Button Toolbars)

For mere komplekse komponenter, hvor du har brug for at kombinere flere knapaggrupper, kan du bruge knapværktøjer. Dette gøres ved at indpakke flere .btn-group elementer i en container med klassen .btn-toolbar. Utility-klasser kan derefter bruges til at skabe afstand mellem grupperne eller til at justere elementernes placering.

<div class="btn-toolbar mb-3" role="toolbar" aria-label="Toolbar with button groups"> <div class="btn-group me-2" role="group" aria-label="First group"> <button type="button" class="btn btn-primary">1 </button> <button type="button" class="btn btn-primary">2 </button> <button type="button" class="btn btn-primary">3 </button> </div> <div class="btn-group me-2" role="group" aria-label="Second group"> <button type="button" class="btn btn-secondary">4 </button> <button type="button" class="btn btn-secondary">5 </button> <button type="button" class="btn btn-secondary">6 </button> </div> <div class="btn-group" role="group" aria-label="Third group"> <button type="button" class="btn btn-info">7 </button> <button type="button" class="btn btn-info">8 </button> </div></div><div class="btn-toolbar" role="toolbar" aria-label="Toolbar with input group"> <div class="btn-group me-2" role="group" aria-label="First group"> <button type="button" class="btn btn-outline-secondary btn-lg">@ </button> <input type="text" class="form-control" aria-label="Input group example" placeholder="Indtast tekst..."> </div> <div class="btn-group" role="group" aria-label="Second group"> <button type="button" class="btn btn-outline-secondary btn-lg">@ </button> </div></div>

I toolbar-eksemplet bruges .me-2 klassen til at tilføje margin til højre mellem knapaggrupperne, hvilket sikrer en pæn visuel adskillelse. Du kan også blande inputfelter med knapaggrupper for at skabe mere avancerede komponenter som vist i det andet toolbar-eksempel.

Indlejring af Knapaggrupper

Bootstrap 5 tillader også, at du indlejrer knapaggrupper i hinanden. Dette er især nyttigt, når du ønsker at kombinere en dropdown-menu med en række andre knapper. Du placerer simpelthen en .btn-group inde i en anden .btn-group.

<div class="btn-group" role="group" aria-label="Nested button group"> <button type="button" class="btn btn-primary">Venstre </button> <div class="btn-group" role="group" aria-label="Nested dropdown"> <button type="button" class="btn btn-primary dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false"> Dropdown </button> <ul class="dropdown-menu"> <li><a class="dropdown-item" href="#">Dropdown link </a></li> <li><a class="dropdown-item" href="#">Dropdown link </a></li> </ul> </div></div>

I dette eksempel er en dropdown-menu indlejret i en knapaggruppe. Knappen "Dropdown" har attributterne data-bs-toggle="dropdown" og aria-expanded="false" for at aktivere Bootstrap's dropdown-funktionalitet.

Links som Knapper

Det er også muligt at anvende Bootstrap's knapklasser på links (<a> tags) i stedet for knapper. Dette er nyttigt, når en handling skal føre brugeren til en anden side eller et andet afsnit af den aktuelle side. Du bruger simpelthen .btn og farveklasserne på <a> tags inden i en .btn-group.

<div class="btn-group" role="group" aria-label="Link example"> <a href="#" class="btn btn-primary active" aria-current="page">Aktiv link </a> <a href="#" class="btn btn-primary">Link </a> <a href="#" class="btn btn-primary">Link </a></div>

Ved at tilføje klassen .active kan du markere et link som aktivt, hvilket ofte bruges til at indikere den aktuelle side eller den valgte mulighed. aria-current="page" er en vigtig tilgængelighedsattribut, der tydeligt angiver, at dette link repræsenterer den aktuelle side.

Hvordan opnår man 2x2 layout og stabling på mobil?

Spørgsmålet om at vise fire knapper som 2x2 på desktop og stable dem på mobil kan løses effektivt med Bootstrap 5's grid-system kombineret med knapaggrupper. Selvom .btn-group i sig selv håndterer stabling, kan du bruge et ydre grid til at styre layoutet på større skærme.

What is a responsive button group in Bootstrap 5?
Responsive button group built with the latest Bootstrap 5. Button group wraps a series of buttons together into a single line (navbar) or stack in a vertical column. Many examples and simple tutorials. Group a series of buttons together on a single line with the button group. Wrap a series of buttons with .btn in .btn-group.

Her er en tilgang:

Grundlæggende struktur:

<div class="container"> <div class="row justify-content-center"> <!-- Første række --> <div class="col-md-6 mb-3"> <div class="btn-group d-flex" role="group" aria-label="Første gruppe"> <button type="button" class="btn btn-primary w-100">Knap 1 </button> <button type="button" class="btn btn-secondary w-100">Knap 2 </button> </div> </div> <div class="col-md-6 mb-3"> <div class="btn-group d-flex" role="group" aria-label="Anden gruppe"> <button type="button" class="btn btn-success w-100">Knap 3 </button> <button type="button" class="btn btn-danger w-100">Knap 4 </button> </div> </div> </div></div>

Forklaring:

  • .row og .col-md-6 skaber en layout, hvor hver knapaggruppe optager halvdelen af bredden på medium skærme og større. På mindre skærme vil .col-md-6 automatisk stable sig lodret.
  • .d-flex.btn-group sikrer, at knapperne inden i gruppen arrangeres som et flex-container.
  • .w-100 på hver knap sikrer, at de strækker sig for at fylde den tilgængelige bredde inden for deres .btn-group.

Når skærmen bliver mindre end breakpointet for .col-md-6 (typisk 768px), vil hver .col-md-6 optage 100% af bredden og stable sig lodret. Inden i hver .btn-group vil knapperne ligeledes stable sig lodret, da .btn-group's standardadfærd er at stable, når der ikke er plads. Dette giver den ønskede 2x2 visning på desktop og en stakket visning på mobil.

Tabeloversigt over Knapaggruppe-klasser

Her er en oversigt over de mest anvendte Bootstrap 5 klasser til knapaggrupper:

KlasseBeskrivelse
.btn-groupGrundlæggende container for at gruppere knapper.
.btn-group-lg / .btn-group-smJusterer størrelsen på hele knapaggruppen.
.btn-toolbarContainer til at kombinere flere .btn-group elementer.
.dropdown-toggleAnvendes på knapper, der udløser en dropdown-menu.
.dropdown-menuContainer for dropdown-elementerne.
.activeMarker en knap eller et link som aktivt.
role="group"ARIA-attribut for tilgængelighed, angiver en gruppe af elementer.
aria-label="..."ARIA-attribut for tilgængelighed, giver en etiket til gruppen.

Ofte Stillede Spørgsmål (FAQ)

Q: Hvordan får jeg knapperne i en gruppe til at være fuld bredde på mobil?
A: Brug .d-flex .flex-column .w-100.btn-group og .w-100 på hver knap. Eller lad Bootstrap's standard responsive adfærd tage over, hvilket ofte er tilstrækkeligt.

Q: Kan jeg bruge .btn-group med links?
A: Ja, du kan anvende Bootstrap's knapklasser som .btn og farveklasser på <a> tags inden i en .btn-group.

Q: Hvad er formålet med role="group" og aria-label?
A: Disse er vigtige for tilgængelighed. De hjælper skærmlæsere og andre assistive teknologier med at forstå, at en samling af knapper udgør en logisk gruppe og giver gruppen en beskrivende etiket.

Q: Hvordan laver jeg en knapaggruppe med dropdown-menu?
A: Indkapsl en standard .btn-group med en dropdown-komponent (.dropdown-toggle, .dropdown-menu) inde i en ydre .btn-group.

Konklusion

Bootstrap 5's knapaggrupper er en kraftfuld og fleksibel komponent, der kan forbedre både funktionaliteten og det visuelle udtryk af din hjemmeside. Ved at forstå de grundlæggende principper, størrelsesjusteringer, knapværktøjer og indlejringsmuligheder, kan du skabe intuitive og brugervenlige interfaces, der ser godt ud på alle enheder. Husk altid at prioritere tilgængelighed ved at inkludere de korrekte ARIA-attributter.

Hvis du vil læse andre artikler, der ligner Bootstrap 5 Knapaggrupper: Fleksibel design, kan du besøge kategorien Teknologi.

Go up