selectlist-elementet
Anpassa rullgardinskontroller med det föreslagna selectlist-elementet
selectlist-elementet är en gratis lektion i HTML Academy på CoddyKit. Detta är lektion 3 av 4. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för HTML Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i HTML Academy innehåller totalt 4 lektioner.
Den långvariga begränsningen
Elementet <select> är en av de få formulärkontroller vars utseende inte kan stylas. Alla CSS-regler som tillämpas på det (anpassade ramar, teckensnitt och option-stilar) ignoreras av webbläsaren, vilket har lett till tusentals custom dropdown-bibliotek som duplicerar det inbyggda beteendet bara för att kunna styla alternativen.
Vad selectlist är
<selectlist> (även kallat <selectmenu>) är ett inbyggt HTML-element som är utformat som ett stilbart alternativ till <select>. Det använder samma konceptuella modell — en utlösarknapp och en lista med alternativ — men varje del är exponerad för CSS-anpassning.
<selectlist>
<option>Apple</option>
<option>Banana</option>
<option>Cherry</option>
</selectlist>Delar som kan stylas
selectlist exponerar knappen (utlösaren i stängt läge), listboxen (den öppna listrutan) och alternativen. Med CSS-pseudoelement (::part(button), ::part(listbox)) kan ni styla var och en utan att påverka det inbyggda beteendet.
Anpassa alternativ
Alternativ i selectlist kan innehålla godtyckligt innehåll — ikoner, beskrivningar och anpassade layouter — inte bara text. Webbläsaren hanterar fortfarande markeringslogik, tangentbordsnavigering och fokushantering, medan ni fritt styr utseendet.
Inbyggda beteenden bevaras
selectlist behåller allt som <select> gör bra: tangentbordsnavigering (piltangenter och type-ahead), meddelanden till skärmläsare, deltagande i formulär och fokushantering. Ni ärver det tillgängliga beteendet och kan styla gränssnittet ovanpå det.
Anpassad knapp
Tillhandahåll en slot för triggern: <button slot="button">Choose fruit <svg>...</svg></button>. Knappen kan utformas fritt — ersätt den inbyggda triangeln med en anpassad ikon, lägg till etiketter och ändra färger. Webbläsaren hanterar fortfarande öppning och stängning.
Deltagande i formulär
selectlist deltar i formulärinskickning precis som select: den har ett name-attribut, ett value och skickas med formuläret. Hanteringen på serversidan är identisk. På märkningsnivå är det en direkt ersättning för de flesta användningsfall med select.
Webbläsarstöd
selectlist är en funktion på ett tidigt utvecklingsstadium. År 2026 finns den i Chromium-baserade webbläsare bakom flaggor eller i begränsad form. Firefox och Safari har ännu inte stöd. Användning i produktion kräver fallback till ett vanligt <select> för webbläsare som saknar stöd.
Svårigheten med polyfills
Att skapa en polyfill för en fullt tillgänglig custom dropdown som matchar det inbyggda beteendet är svårt — fokusfällor, tangentbordsnavigering, integrering med skärmläsare och deltagande i formulär. Bibliotek som Downshift, Combobox och react-aria hanterar detta med tusentals rader kod. selectlist ersätter allt detta med ett enda element.
När bör det tas i bruk
För interna appar eller distributioner som endast använder Chromium sparar selectlist redan i dag en betydande mängd kod. För publika webbplatser med bred målgrupp bör ni vänta tills Firefox och Safari har stöd, eller använda ett wrapperbibliotek som använder selectlist där det stöds och annars faller tillbaka på en anpassad React-/Vue-rullgardinsmeny.
Färdplan för ersättning
När selectlist finns tillgängligt överallt kan ni räkna med att många bibliotek för anpassade rullgardinsmenyer antingen fasas ut eller blir tunna omslag runt det inbyggda elementet. Följ standardiseringsprocessen; API:t har genomgått ändringar och kan fortsätta att utvecklas innan standardiseringen är klar.
Konsekvenser för design
Designers kan nu specificera pixelperfekta rullgardinsmenyer utan reservationer av typen "Här är designen, men rullgardinsmenyn kommer att se annorlunda ut i webbläsaren". selectlist undanröjer en av de mest långvariga visuella skillnaderna mellan designskisser och den HTML som faktiskt levereras.
Kunskapskontroll
Varför är selectlist-elementet viktigt – vilken begränsning hos det inbyggda
Sammanfattning
selectlist (även kallat selectmenu) är ett framväxande inbyggt HTML-element som kombinerar
Lär dig HTML med en AI-lärare – gratis
Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.
- Kurser
- 40
- Lektioner
- 159
Vanliga frågor
Är lektionen ”selectlist-elementet” gratis?
Ja – du kan läsa vilka 3 lektioner som helst i lärvägen HTML Academy, inklusive ”selectlist-elementet”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i HTML Academy innehåller totalt 4 lektioner.
Vad lär jag mig i ”selectlist-elementet”?
Anpassa rullgardinskontroller med det föreslagna selectlist-elementet Ni övar på HTML Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.
Behöver jag någon erfarenhet för att börja lära mig HTML Academy?
Du behöver inga förkunskaper. Utbildningen i HTML Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 3 av 4.
Hur lång tid tar lektionen ”selectlist-elementet”?
De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.
Kan jag skriva och köra kod i den här HTML Academy-lektionen?
Ja. Varje HTML Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.
Alla lektioner i den här kursen
- Deklarativ Shadow DOM
- Popover API
- selectlist-elementet
- Interest Invokers och Command-attributet