26/03/2026
I den moderne webudvikling er interaktive elementer afgørende for at skabe en engagerende og brugervenlig oplevelse. Blandt de mest almindelige og effektive værktøjer finder vi dropdown-menuer. Disse kompakte, kontekstuelle overlays giver brugere mulighed for at vælge mellem en række foruddefinerede muligheder, uden at optage unødvendig plads på skærmen. Bootstrap, et af verdens mest populære frontend-rammer, tilbyder en robust og fleksibel løsning til at implementere dropdowns med minimal indsats. Denne artikel vil guide dig gennem processen med at skabe, tilpasse og optimere dine Bootstrap dropdown-menuer, så de ikke blot ser godt ud, men også fungerer fejlfrit og er tilgængelige for alle brugere.

En dropdown-menu er et UI-element, der giver brugeren mulighed for at vælge en enkelt værdi fra en liste af foruddefinerede muligheder, som først bliver synlig, når brugeren interagerer med et udløsende element – typisk en knap eller et link. Forestil dig en menu, der foldes ud, når du klikker på den, og præsenterer en række valgmuligheder, som ellers ville optage for meget plads på din side. Dette gør dropdowns ideelle til navigation, formularer, indstillingsmenuer og mange andre scenarier, hvor pladsbesparelse og organiseret præsentation er vigtig. Bootstrap forbedrer denne funktionalitet med indbyggede stilarter og JavaScript-funktionalitet, hvilket gør implementeringen hurtig og konsekvent.
Den Grundlæggende Struktur af en Bootstrap Dropdown
At oprette en simpel dropdown i Bootstrap er overraskende ligetil, takket være rammernes intuitive klassesystem. Kernen i en Bootstrap dropdown ligger i brugen af specifikke klasser og data-attributter, der fortæller browseren og Bootstrap's JavaScript, hvordan elementerne skal opføre sig. Den grundlæggende struktur består af en wrapper-div, en knap eller et link, der fungerer som udløser, og en uordnet liste, der indeholder menuen.
For at begynde skal du indpakke din dropdown i en div med klassen .dropdown. Dette etablerer den kontekst, som dropdown-menuen vil operere indenfor. Inde i denne div placerer du den knap eller det link, der skal udløse menuen. Denne udløser skal have klassen .dropdown-toggle og den afgørende attribut data-bs-toggle="dropdown". Bemærk brugen af data-bs-toggle, som er standard i Bootstrap 5 og nyere; ældre versioner af Bootstrap brugte data-toggle. Dette er en vigtig forskel at huske på, da den sikrer, at JavaScript-funktionaliteten aktiveres korrekt. Knappen kan også have standard Bootstrap knapklasser som .btn og .btn-primary for at give den et passende udseende.
Efter knappen tilføjer du en uordnet liste (ul) med klassen .dropdown-menu. Denne liste vil indeholde dine individuelle menupunkter, som typisk er listeelementer (li) med anker-tags (a) indeni. Disse anker-tags skal have klassen .dropdown-item for at få den korrekte styling og interaktivitet fra Bootstrap. Et lille span-element med klassen .caret kan tilføjes inde i knappen for visuelt at indikere, at det er en dropdown-udløser, selvom dette ofte er indbygget i nyere Bootstrap-versioner.
Her er et eksempel på, hvordan den grundlæggende struktur ser ud:
- Handling 1
- Handling 2
- Handling 3
Husk, at for at denne funktionalitet skal virke, skal du have Bootstrap's CSS og JavaScript inkluderet i dit projekt. JavaScript-delen kræver også Popper.js, som Bootstrap bruger til dynamisk placering af dropdowns (med undtagelse af dropdowns i navbars).
Tilpasning og Forbedring af Dine Dropdowns
Bootstrap tilbyder en række klasser til at tilpasse udseendet og funktionaliteten af dine dropdown-menuer ud over den grundlæggende opsætning. Disse tilføjelser giver dig mulighed for at skabe mere komplekse og informativt rige menuer.

Headers og Dividers
For at organisere dine menupunkter i logiske sektioner kan du tilføje headers. Dette gøres ved at inkludere et li-element med klassen .dropdown-header. Disse headers er ikke klikbare, men fungerer som overskrifter for grupper af menupunkter. For at visuelt adskille grupper af menupunkter kan du indsætte en vandret linje, en såkaldt divider. Dette gøres med et tomt li-element, der kun indeholder klassen .dropdown-divider. Dette skaber en tynd, diskret linje, der hjælper med at forbedre menuens læsbarhed og struktur.
Du kan fremhæve et specifikt menupunkt som 'aktivt' ved at tilføje klassen .active til dets li-element. Dette giver typisk menupunktet en anden baggrundsfarve, der indikerer, at det er det nuværende valg eller den aktuelle side. Omvendt kan du deaktivere et menupunkt ved at tilføje klassen .disabled til li-elementet. Et deaktiveret punkt vil se nedtonet ud og vil ikke reagere på klik, hvilket er nyttigt, når visse handlinger ikke er tilgængelige for brugeren.
Som standard åbner en dropdown-menu nedad og justeres til venstre for dens udløserknap. Men Bootstrap giver dig fuld kontrol over menuens retning og justering:
- Dropup: Tilføj klassen
.dropuptil den ydre.dropdowncontainer for at få menuen til at åbne opad i stedet for nedad. - Dropend: Brug
.dropendtil at få menuen til at åbne til højre for udløserknappen. - Dropstart: Anvend
.dropstartfor at få menuen til at åbne til venstre for udløserknappen. - Centrering: Klasserne
.dropdown-center(til dropdowns) og.dropup-center(til dropups) kan bruges på den overordnede container for at centrere menuen i forhold til udløseren. - Højrejustering: Tilføj
.dropdown-menu-endtilul.dropdown-menufor at højrejustere menuen i forhold til udløseren. Dette er især nyttigt, hvis din knap er placeret i højre side af en navigation.
Dropdowns er ikke begrænset til kun at indeholde links. Du kan inkludere forskellige typer indhold for at skabe mere alsidige menuer:
- Almindelig tekst: Brug et
span-element med klassen.dropdown-item-texttil at vise ikke-interaktiv tekst. - Formularer: Det er muligt at indlejre en hel formular inden i en dropdown-menu. Dette er ideelt til login-felter, søgefelter eller filtre, hvor du ønsker at spare plads. Du skal blot placere din
forminde iul.dropdown-menuog bruge passende Bootstrap-formular-klasser til styling. Du kan også brugedata-bs-auto-close="outside"på trigger-knappen for at forhindre menuen i at lukke, når der klikkes inde i formularen.
Tilgængelighed og Brugervenlighed (Accessibility)
At skabe tilgængelige websteder er afgørende for at sikre, at alle brugere, herunder dem der anvender skærmlæsere eller andre hjælpeteknologier, kan interagere med dit indhold. Bootstrap's dropdowns er designet med en vis grad af tilgængelighed i tankerne, men du kan forbedre den yderligere ved at tilføje specifikke ARIA-attributter.
For dropdown-udløsere (knapper eller links), der ikke er ægte applikationsmenuer (dvs. de ikke kun indeholder menupunkter), anbefales det at tilføje role="button", hvis du bruger et a-tag som udløser. Dette informerer skærmlæsere om elementets formål. Derudover er det god praksis at inkludere aria-expanded="false" (når menuen er lukket) og aria-expanded="true" (når menuen er åben) på udløseren. Dette giver skærmlæsere information om menuens aktuelle tilstand.
Bootstrap håndterer mange tastaturinteraktioner automatisk, såsom navigation gennem menupunkter med piletasterne og lukning af menuen med Esc-tasten. For aktive menupunkter bør du bruge aria-current="true" for at indikere den aktuelle tilstand til hjælpeteknologier. For deaktiverede menupunkter kan du tilføje aria-disabled="true".
Bootstrap Versioner og Kompatibilitet
Det er vigtigt at være opmærksom på forskellene mellem Bootstrap-versioner, især når det kommer til JavaScript-attributter. Som nævnt tidligere, bruger Bootstrap 3 og Bootstrap 4 primært data-toggle="dropdown", mens Bootstrap 5 har skiftet til data-bs-toggle="dropdown". Hvis du arbejder med ældre projekter eller opgraderer, er det en nøglefaktor, der kan forårsage, at dine dropdowns ikke fungerer som forventet, hvis den forkerte attribut bruges.

Desuden er Bootstrap 5 bygget uden jQuery som en afhængighed, hvilket er en betydelig ændring. I stedet anvender det ren JavaScript. Dette påvirker ikke direkte HTML-strukturen for dropdowns, men det er vigtigt at huske, når du inkluderer JavaScript-filer og potentielt debugger problemer. Sørg altid for at inkludere den korrekte Bootstrap JavaScript-bundle (f.eks. bootstrap.bundle.min.js), da den indeholder Popper.js og den nødvendige dropdown-funktionalitet.
Avancerede Indstillinger og Adfærd
Bootstrap's dropdown-plugin tilbyder yderligere muligheder for finjustering af adfærd, som kan konfigureres via data-attributter eller JavaScript-objekter.
Auto Close Adfærd
En af de mest nyttige indstillinger er data-bs-auto-close, som styrer, hvornår dropdown-menuen lukkes:
data-bs-auto-close="true"(standard): Menuen lukker ved klik både indenfor og udenfor menuen.data-bs-auto-close="false": Menuen lukker kun ved at klikke på udløserknappen igen eller manuelt kalde en lukke-metode. Den lukker ikke ved klik udenfor eller ved Esc-tasten.data-bs-auto-close="inside": Menuen lukker kun ved klik inde i menuen. Klik udenfor lukker den ikke.data-bs-auto-close="outside": Menuen lukker kun ved klik udenfor menuen. Klik inde i menuen lukker den ikke.
Denne fleksibilitet er særlig værdifuld for dropdowns, der indeholder interaktive elementer som formularer, hvor du måske ønsker at tillade brugeren at interagere med indholdet uden at menuen pludselig lukker.
Forskydning (Offset) og Referencepunkt
Du kan finjustere dropdown-menuens position i forhold til udløseren ved hjælp af data-bs-offset. Denne attribut tager to kommaseparerede værdier (skidding, distance), der definerer forskydningen i x- og y-retningen. For eksempel, data-bs-offset="0,10" vil flytte menuen 10 pixels nedad. Attributten data-bs-reference giver dig mulighed for at angive, hvilket element Popper.js skal bruge som referencepunkt for placeringen, enten 'toggle' (udløserknappen, standard) eller 'parent' (den overordnede .dropdown container).
Ofte Stillede Spørgsmål (FAQ)
Her er svar på nogle af de mest almindelige spørgsmål vedrørende Bootstrap dropdowns:
| Spørgsmål | Svar |
|---|---|
Hvad er forskellen på data-toggle og data-bs-toggle? | data-toggle bruges i Bootstrap 3 og 4, mens data-bs-toggle er den korrekte attribut for Bootstrap 5 og nyere versioner. Det er vigtigt at bruge den version, der matcher din Bootstrap-installation, for at sikre, at JavaScript-funktionaliteten aktiveres korrekt. |
| Hvorfor fungerer min dropdown ikke, når jeg klikker på den? | Dette skyldes ofte, at Bootstrap's JavaScript-fil ikke er korrekt inkluderet eller initialiseret, eller at du har glemt at inkludere Popper.js (som er en afhængighed for Bootstrap 5's dropdowns, medmindre det er i en navbar). Dobbelttjek, at du har inkluderet bootstrap.bundle.min.js (eller tilsvarende) og at der ikke er JavaScript-fejl i konsollen. Sørg også for, at data-bs-toggle="dropdown" er korrekt stavet på din udløserknap. |
| Kan jeg have formularer inde i en dropdown-menu? | Ja, absolut! Du kan placere ethvert HTML-indhold, herunder formularer, inden i .dropdown-menu. For at forhindre menuen i at lukke, når brugeren interagerer med formularen, kan du tilføje data-bs-auto-close="outside" til din dropdown-udløserknap. |
| Hvordan ændrer jeg dropdown-menuens retning (f.eks. opad eller til siden)? | Du kan nemt ændre retningen ved at tilføje specifikke klasser til den ydre .dropdown container. Brug .dropup for opadgående menuer, .dropend for menuer, der åbner til højre, og .dropstart for menuer, der åbner til venstre. |
| Er Bootstrap dropdowns tilgængelige for skærmlæsere? | Bootstrap giver et godt grundlag for tilgængelighed. For at forbedre den yderligere bør du tilføje ARIA-attributter som aria-expanded til udløserknappen og aria-current eller aria-disabled til menupunkterne, hvor det er relevant. Bootstrap håndterer tastaturnavigation automatisk. |
| Hvordan kan jeg tilpasse udseendet af min dropdown? | Du kan tilpasse udseendet ved at overskrive Bootstrap's standard CSS-variabler (for Bootstrap 5.2.0+) eller ved at tilføje din egen brugerdefinerede CSS. Brug klasser som .dropdown-header, .dropdown-divider, .active og .disabled til at styre specifikke elementers udseende og adfærd. |
Konklusion
Bootstrap dropdown-menuer er et utroligt alsidigt og effektivt værktøj til at forbedre brugeroplevelsen på din hjemmeside. Ved at forstå den grundlæggende struktur, de forskellige tilpasningsmuligheder og de vigtige aspekter af tilgængelighed, kan du skabe dynamiske og professionelle menuer, der passer perfekt til dine behov. Uanset om du bygger en simpel navigationsmenu eller et komplekst interaktivt element, giver Bootstrap dig de værktøjer, du skal bruge for at lykkes. Husk altid at teste dine dropdowns på tværs af forskellige browsere og enheder for at sikre en problemfri oplevelse for alle dine brugere.
Hvis du vil læse andre artikler, der ligner Skab Dynamiske Dropdown-Menuer med Bootstrap, kan du besøge kategorien Teknologi.
