Undvik att begränsa antalet tecken man kan skriva in i textfältet, eftersom det gör det krångligt för användaren att rätta om hon skrivit fel.

Fånga hellre inmatningsfel när formuläret kontrolleras – då finns det mycket större möjligheter att förklara för användaren varför hennes inmatning är olämplig.

UR ANVÄNDBARHETSBOKEN

31 Jan 2011

52.6 Textfält

Användning

Används för att skriva in en rad text.

Utformning

För texten i textfältet finns i stort sett samma möjligheter att styra utseendet som för annan text. De flesta webbläsare kan också centrera eller högerställa texten.

Även textfältets kanter och bakgrundsfärg finns mycket goda möjligheter att styra. Kanterna kan dock inte alltid tas bort helt.

UR ANVÄNDBARHETSBOKEN

30 Jan 2011

52.5 Vallista

Även denna går under många olika namn. Tekniskt sett fungerar den mycket likt valboxarna, och ofta används samma beteckningar. På engelska används select list, men även andra namn.

Användning

Flera alternativ syns samtidigt. Om inte alla får plats finns en rullist för att se resten.

Den kan ha inget, ett eller flera alternativ valda (det sista är dock inte känt av alla användare, även om det är lättare att förklara hur man gör med det i en vallista än i en valbox).

Den stora fördelen som flerradiga listor har, jämfört med valboxar, är att de ger bättre överblick över alternativen. Nackdelen är att de tar mer plats. De är inte särskilt vanliga på webben, vilket gör att användarna kan vara en aning osäkra på hur de skall användas.

Råden för valboxar gäller även för vallistor. Eftersom vallistan inte behöver ha något alternativ förvalt gäller dock inte Valboxar där inget alternativ skall vara förvalt kan inledas med en instruktion , sid 255 .

Utformning

För de flesta webbläsare går det att ställa in typsnitt, textstorlek, fet eller kursiv text samt bakgrundsfärg. För enskilda alternativ går det ofta att sätta färg på text och bakgrund.

Om några alternativ i en lång valbox är mycket populärare än de andra kan de sättas först.

Skilj i så fall av kortlistan från resten av valboxen. (Se föregående råd om hur detta kan göras.)

Alternativen från kortlistan bör upprepas i långa listan.

UR ANVÄNDBARHETSBOKEN

28 Jan 2011

52.4.5 Gruppera och etikettera alternativen

Om det finns många alternativ i valboxen, bör dessa grupperas och grupperna gärna också få etiketter – ”mellanrubriker” – över sig.

Gruppering görs med HTML-elementet <optgroup>. Länkar till kodningsråd och knep för att få optgroup att fungera även med äldre webb­läsare finns via www.anvandbart.se/ab/valbox-gruppera.

Se även WCAG 12.3 (prioritet 2), sid 367. Samt Navi­ga­ti­on­ens tema, sid 156, där det finns teman som även kan användas för att strukturera en valbox.

UR ANVÄNDBARHETSBOKEN

27 Jan 2011

52.4.4 Undvik långa valboxar

Samma sak gäller för valboxar som för till exempel navigation – redan någonstans vid sex alternativ börjar användare tappa överblick (se Om antalet alternativ är fler än fem, försök hitta ett tema för navigationen , sid 159 ). De klarar betydligt längre boxar än så, men får allt svårare med överblicken. En valbox med för användaren okända alternativ, där hon måste betrakta vart och ett och väga dem mot varandra bör därför hållas kort.

Däremot kan en valboxar där användaren redan har en karta i sitt huvud för både innehåll och ordning – till exempel länder i bokstavsordning – utan problem vara långa.

Även om det tekniskt är möjligt att låta användaren välja flera alternativ i en valbox samtidigt så är detta ingenting som användarna känner till eller som det är lätt att förklara för dem. Detta skall därför undvikas. I Välj rätt flervalskontroll, sid 283 , finns andra alternativ för detta.

Om inget alternativ skall vara förvalt, kan valboxen inledas med en instruktion i stil med ”Välj ett land”. Denna rad bör ges ett avvikande utseende.

Alternativt kan första alternativet lämnas tomt.

En valbox kräver av användaren att hon skaffar sig överblick och sedan väljer det alternativ som passar bäst. För att underlätta detta bör de olika alternativen vara korta och skilja sig tydligt från varandra. Det är en fördel om de kan formuleras så att de inleds med den mest betydelsebärande delen (speciellt om listan är ordnad i bokstavsordning). Se Sortera det som är relevant, sid 189 .

UR ANVÄNDBARHETSBOKEN

23 Jan 2011

52.4 Valbox

Kärt barn med många namn, till exempel ”rullista”, ”vallista”, ”listruta”, ”listlåda”, ”flervalslista”, ”selectlista”, ”rullgardin”, ”alternativlista”, ”drop-down” och ”pop-up” . På engelska kallas den selectbox, men också där finns många andra benämningar.

Här kommer den att kallas för ”valbox”. Det är ett godtyckligt val, inte mer officiellt än något av de andra. Eftersom den kallas för så många olika saker, är det viktigt att vara extra tydlig med vad man menar när man pratar om den, till exempel i instruktioner.

Användning

Ett av alternativen är förvalt och det är endast det som syns.

Med hjälp av mus eller tangentbord kan man välja något av de andra alternativen.

Någonting är alltid valt (men detta kan vara ett alternativ som inte har någon effekt och som är tomt eller har formulering som kan uttolkas ”Inget valt”).

Det är tekniskt möjligt att samtidigt välja flera alternativ, men i praktiken bör kontrollen bara användas för att välja en sak åt gången.

Utformning

För de flesta webbläsare går det att ställa in typsnitt, textstorlek, fet eller kursiv text samt bakgrundsfärg. För enskilda alternativ går det vanligen att sätta färg på text och bakgrund.

Hela kontrollen kan inaktiveras. Även enskilda alternativ kan inaktiveras, men få webbläsare stöder detta.

UR ANVÄNDBARHETSBOKEN

22 Jan 2011

52.3.2 Gör radioknappsgrupperna tydliga

Layouten måste göra det uppenbart vilka radioknappar som hänger samman.

Ofta är detta tydligare när radioknapparna sitter över varandra än när de läggs horisontellt.

UR ANVÄNDBARHETSBOKEN

21 Jan 2011

52.3.1 Radioknappar bör ha ett förval

I en grupp radioknappar bör en av knapparna vara förvald. Om det finns behov av ett inget-val, så bör detta vara en egen radioknapp (detta för att användaren alltid skall kunna ångra en inmatning och återgå till ursprungsläget).

Personligen tycker jag att man kan göra undantag från detta när uppgiften är obligatorisk och formuläret inte kommer att godkännas om inget val gjorts. Andra användbarhetsmänniskor är dock strängare på denna punkt och menar att radioknappar alltid måste ha ett förval.

UR ANVÄNDBARHETSBOKEN

20 Jan 2011

52.3 Radioknapp

Användning

Radioknappar hänger ihop i grupper, med minst två knappar i varje. Man kan bara välja ett av alternativen i en grupp. Något av alternativen är (vanligen) förvalt.

Utformning

Inte heller för själva radioknapparna finns några intressanta formgivningsmöjligheter som fungerar på olika webbläsare. Men etiketten kan utformas.

UR ANVÄNDBARHETSBOKEN

19 Jan 2011

52.2 Kryssruta

Användning

Man kan välja inget, ett eller flera av alternativen.

Alternativ kan vara förvalda.

Utformning

Inga intressanta och pålitliga möjligheter att påverka utseendet hos själva kryssrutan finns (däremot kan etiketten bredvid rutan formges).

En detalj värd att notera är att trots namnet så är det inte ett kryss utan en liten bock i rutan.

Eftersom en del webbläsare använder grå bakgrundsfärg på kontroller för att markera att de inte är aktiva (till exempel på kryssrutor, valboxar och textfält), bör grått inte användas för dekorativa syften i kontroller.

UR ANVÄNDBARHETSBOKEN

18 Jan 2011

52.1 Kontroller

Ett formulär består av sina kontroller – fält, vallistor, knappar. I de följande kapitlen kommer vi att gå igenom var och en av dem.

Utformning

Kontrollers utseende kan i viss mån påverkas med formatmallar. Hur de ser ut och vad som kan ändras varierar dock kraftigt från webbläsare till webbläsare. Se www.anvandbart.se/ab/kontroller för tips om hur olika läsare uppför sig.

UR ANVÄNDBARHETSBOKEN

16 Jan 2011

52 Formulär

Formulär har två användningsområden. Dels det de ursprungligen var avsedda för – att ta in information från användaren. Men de har också blivit mycket populära för att styra program via webben – så kallade webbapplikationer. Det är i hög grad formulären som gör webben interaktiv.

Gränsen mellan de två användningarna är ganska diffus, men jag har ändå försökt göra en uppdelning så att detta kapitel handlar om hur formulär fungerar och hur de kan användas för att samla in uppgifter från användaren, medan Webbapplikationer , sid 285 , handlar om hur man styr program med hjälp av dem.

Formulär används även för att bygga navigation. Mer om det i Val­box­meny , sid 141 .

Användbarhetsutmaning

Formulär, speciellt när de används för webbapplikationer men även i den enkla informationsinhämtande rollen, är en utmaning för användbarheten. Många användare upplever dem som besvärliga - de tar tid och är inte sällan krångliga. De vill att användaren lämnar ut uppgifter om sig själv, något som många är försiktiga med. Formulär är för många användare ett nödvändigt ont som bara accepteras så länge hon ser ett klart samband mellan sin ansträngning och den nytta de gör för henne.

UR ANVÄNDBARHETSBOKEN

15 Jan 2011

Interaktionsdesign / Använda

En viktig förklaring till webbens stora framgång är att den är ett möte mellan två världar som tidigare i hög grad varit åtskilda – informationen och interaktionen. Dels är den som en sofistikerad trycksak fast på skärm; det är den aspekten vi mest uppehållit oss vid hittills. Men den kan också vara något som användaren interagerar med.

Interaktionsdesignen handlar om detta, hur användaren genom webben kan styra datorprogram och samspela med informationen.

Denna avdelning tar upp hur formulär rent konkret gör det möjligt och hur webbapplikationer kan utnyttja denna möjlighet, men också hur man avgöra vem som är vem och vilken betydelse det kan ha att slippa vänta.

UR ANVÄNDBARHETSBOKEN

15 Jan 2011

51.1.7 Använd inte tabeller för layout

HTML-elementet <table> skall användas för att skapa traditionella tabeller, inte för att layouta webbsidor. Att styra sidans utformning skall istället göras med formatmallar.

Så långt principen. I praktiken är det dock kvistigare. Formatmallarna kan vara ganska buggiga, speciellt när flera spalter läggs bredvid varandra. Det går definitivt att använda dem, men det kan kräva mycket jobb och omfattande testning med olika webbläsare. Att bygga den grundläggande layouten – till exempel uppdelningen av sidan i spalter – med hjälp av <table> är både enklare och robustare.

Själv har jag begått detta brott mot standarden många gånger, och kommer säkert att fortsätta göra det till dess formatmallstekniken mognat och blivit rimligt enkel att få rätt. Andra webbmakare är betydligt renlärigare, jobbar hårt och gör utomordentliga och pålitliga formatmallsbaserade layouter.

24-timmarswebben tillåter inte tabeller för layout.

Se även Gör webbplatsen så att den är användbar med alla webbläsare, sid 435 .

Om tabeller används för layout är det viktigt att det görs på ett genomtänkt sätt, så att de klarar att omvandlas till löpande text av skärmläsaren.

Det är olämpligt och ibland direkt förvirrande att i tabeller för layout använda den kodnings som är avsedd att göra datatabeller tillgängligare, t.ex. <th>, <caption> och scope.

Se även WCAG 3.3 (prioritet 2), sid 353 , 5.3 (prioritet 2), sid 356 , och 5.4 (prioritet 2), sid 356 .

Är tabellen lång kan HTML-element som <thead>, <tfoot> och <tbody> användas för att strukturera den. De gör det möjligt för en del webbläsare att sätta ut kolumnrubriker på varje sida vid utskrift.

Se även Gör sidorna enkla att skriva ut, sid 86 .

För seende är sambandet mellan kolumnrubriken och data längre ner i kolumnen uppenbar, men för den som hör tabellen uppläst som löpande text går den kopplingen förlorad. Därför måste rad- och kolumnrubriker kodas så att skärmläsaren kan hjälpa användaren.

För enkla tabeller görs detta med HTML-elementet <th>. För mer komplexa tabeller finns flera tekniker, beroende på hur tabellen ser ut. Se tabeller.

Eftersom skärmläsaren läser upp rad- och kolumnrubriker upprepade gånger under färden genom en tabell, kan det vara en god idé att använda abbr-attributet. Observera att detta inte är detsamma som <abbr>-elementet, utan används för att ge skärmläsaren en kortversion av texten.

Ofta är det ont om plats i tabeller och behov av att förkorta rad- och kolumnrubrikerna för alla användare, inte bara de synskadade. Använd <abbr> för detta. Se Förklara förkortningar, sid 94 .

Se även WCAG 5.1 (prioritet 1), sid 355 , 5.2 (prioritet 1), sid 356 , och 5.6 (prioritet 3), sid 357 .

UR ANVÄNDBARHETSBOKEN

6 Jan 2011

51.1.4 Gör tydliga rader och kolumner

Gör det lätt för användaren att se vilka data som hänger samman. Speciellt att följa en rad som sträcker sig över flera kolumner kan vara svårt. Ibland kan stödlinjer vara till stor hjälp, liksom att låta varannan rad vara färgad.

Kolumner blir lättare att läsa om de har en rak vänsterkant för ögat att följa.

Skilj ut tabellens rubriker från dess data. Använd <th> för att ge rad- och kolumnrubriker ett annat utseende.

UR ANVÄNDBARHETSBOKEN

5 Jan 2011

51.1.3 Ge datatabeller en sammanfattning

En tabell kan också ha ett summary-attribut, där man på ett litet utförligare sätt kan berätta om tabellen och till exempel vilka slutsatser som kan dras av den. summary kan dock inte vara längre än ett stycke.

Det som står i summary hörs bara av dem som har skärmläsare, det är inte synligt i vanliga webbläsare.

Se även WCAG 5.5 (prioritet 3), sid 357 .

UR ANVÄNDBARHETSBOKEN

4 Jan 2011

51.1.2 Ge datatabeller en etikett

En datatabell bör få en etikett, det vill säga en rubrik eller ”bildtext” som berättar vad den är. Hellre än att placeras i den löpande texten bör den läggas i ett <caption> som kopplar samman den med tabellen.

En sak att se upp med: att styra utseende på och placering av <caption> med hjälp av formatmallar kan vara pilligt, eftersom olika webbläsare behandlar det olika.

Ett alternativ till <caption> är att ge tabellen en title- text.

Se även WCAG 5.5 (prioritet 3), sid 357.

För en synskadad användare ser inte tabeller ut alls på samma sätt som för en seende. Skärmläsare läser upp dem som löpande text, tabellrad för tabellrad. Det behövs inte mycket fantasi för att förstå hur svårt det kan vara att överblicka en datatabell man hör på det sättet.

För att göra datatabeller tillgängliga har skärmläsare ett antal specialfunktioner, så att den till exempel kan läsa upp kolumnrubriken varje gång man byter kolumn. För att dessa skall göra någon nytta måste kodningen göras på rätt sätt.

För layouttabeller är läget enklare. Där är kravet bara att de skall vara vettiga när de omvandlas löpande text.

Undvika att lägga tabeller inuti tabeller, eftersom komplexa tabellkonstruktioner ofta blir röriga som löpande text.

Se även WCAG 5.3 (prioritet 2), sid 356 .

UR ANVÄNDBARHETSBOKEN

23 Dec 2010

51 Tabeller

Ett annat område för informationsdesignen är tabeller. Här är det mest en fråga om att göra dem på ett sätt så att även synskadade kan använda dem.

I webbsammanhang kan det vara klargörande att skilja på två sorters tabeller:

datatabeller - vanliga, normala tabeller som funnits sedan långt innan webben och som används för att presentera ett siffer- eller faktamaterial. Borde egentligen kallas bara för ”tabeller” men ”data” har lagts in för att uttryckligen skilja dem från layouttabellerna.

layouttabeller - används för att bygga upp en sida, till exempel för att åstadkomma flera spalter. Ser inte alls ut som tabeller, men görs med samma HTML-koder.

Att koda tabeller så att de blir tillgängliga kräver omsorg om detaljerna. På www.anvandbart.se/ab/tabeller finns länkar till bra genomgångar av hantverket.

Sortering av tabeller

För tabeller där användaren skall kunna styra sorteringen, se Låt användaren välja mellan olika sorteringar, sid 243 .

UR ANVÄNDBARHETSBOKEN

22 Dec 2010

50.4.1 Presentera tomma listor på ett vettigt sätt

Bild 95. Varje vecka genererar datorn på min sons skola en rapport, som e-postas i snyggt HTML-format. När inget finns att säga blir det en svårtolkad soppa av kolumnrubriker för de icke-existerande listorna. (Personuppgifter överstrukna av mig.)

När listor plockas fram ur databaser, händer det ibland att de är tomma. Det kan vara en sökning som inte gett något resultat eller omständigheter som förändrats sedan listan infördes.

Databasgenererade listor måste ha regler för hur de skall hanteras om de är tomma. Att visa dem med samma form som vanligt men utan innehåll ger ofta ett löjligt och ibland förvirrande intryck. Ofta är det bättre att ersätta dem med en text som förklarar att inget för närvarande finns.

Även listor med enbart en rad kan ibland se märkliga ut och vara i behov av en speciell utformning.

UR ANVÄNDBARHETSBOKEN

21 Dec 2010

50.3.2 Gör det möjligt att se hela listan

Även om uppdelning på flera sidor kan göra en lista enklare att hantera (speciellt för användare med långsam förbindelse) kan även en möjlighet att se hela listan samlad på en sida vara uppskattad, till exempel av användare som vill kunna använda webbläsarens inbyggda sökfunktion för att snabbt hitta i listan.

Bild 94. Med en 'visa hela listan'-länk kan användare med bra bandbredd få en effektivare vy på listan. (www.gap.com)

UR ANVÄNDBARHETSBOKEN

20 Dec 2010

50.3.1 Ge långa listor navigation

När en lista är lång, skall det finnas en möjlighet att gå direkt till en specifik del av listan. I synnerhet gäller detta om listan är så lång att den delats upp över flera sidor.

För att vara användbar måste navigationen visa var i listan man hamnar. Att bara ange sidnummer, typ 1 2 3 4 5 6 7 är inte till mycket nytta, eftersom användaren inte kan veta om det hon söker finns under 3 eller 5. En sådan navigation är endast acceptabel när listan sorteras efter rang, eftersom användaren sällan har något intresse av att hoppa i sådana listor utan vanligen bara läser från början tills hon tröttnar. Ett typiskt exempel är sökresultat när listan sorterats efter relevans.

Bokstavsordning

För listor sorterade i bokstavsordning kan navigationen göras genom att ovanför varje bokstavsgrupp sätta ut följande rad:

A B D E F G H I L M N O P R S T V W X Y Z Å Ö

Bokstaven för den aktuella gruppen görs visuellt framträdande och är inte länkad.

Endast bokstäver där det finns innehåll är med i raden.

Denna navigering kan användas oavsett om listan är på en sida eller uppdelad över flera. Navigationen bör även sättas ut längst ner på sidan, men då utan någon bokstav särskilt markerad.

Bokstavsgrupperna kan också göras större, till exempel så här:

A-D E-J K-Q R-W X-Ö

eller så här:

A-Elektronikreparatör Elingenjör-Jonglör Jornalist-Patentombud osv.

Nummerordning

Även andra sorters sorteringar kan använda denna typ av navigation, till exempel numerisk:

1-29 30-39 40-79 80-122

eller

1- 30- 40- 80-

Sträva efter att dela listan så att grupperna kan starta på ett jämnt tiotal (eller hundratal, tusental, etc.). Detta är viktigare än att hålla grupperna jämnstora.

Tidsordning

Datum bör om möjligt delas upp enligt något lättöverskådligt mönster, till exempel månader:

jan feb mars apr juni aug sept okt nov dec

eller när det är fråga om längre tid år eller en kombination av månader och år:

2005 dec 2006 jan feb mars apr juni aug sept okt nov dec 2007 jan feb

Veckolånga tidsperioder är knepigt. Inom vissa yrkesområden fungerar veckonummer men för de flesta människor säger de ingenting. Vanliga datum blir lätt röriga och bör om möjligt undvikas. Om detta inte är möjligt, sträva efter att få till hela veckor och börja dem på måndagar:

5 dec 05- 12 dec- 19 dec- 26 dec- 2 jan 06- 9 jan- 16 jan-

Dagsnavigation kan relatera till månaden (och gärna även litet diskret till veckorna). Till exempel så här:

feb: 1 2 3 4 5 | 6 7 8 9 10 11 12 | 13 14 15 16 17 18 19 | 20 21 22 23 24 25 26 | 27 28

Se även Skriv datum i klartext, sid 98 .

Utformning

Försök alltid hitta en lösning där navigationen får plats på en rad (så länge webbläsaren är inställd på normalstor text).

För att markera från…till används tankstreck (HTML-kod &#8211;), inte bindestreck eftersom det är för kort. När tankestrecket bara markerar från och därför står framför ett mellanslag, skall det inte vara understruket.

UR ANVÄNDBARHETSBOKEN

18 Dec 2010

50.2.2 Låt användaren välja mellan olika sorteringar

När en lista innehåller flera kolumner med olika sorters uppgifter finns det ofta olika tänkbara sorteringar, beroende på vilka uppgifter man är mest intresserad av. Det kan vara en god idé att låta användaren själv styra dessa.

(Rent tekniskt görs en flerkolumnig lista nästan alltid som en tabell, och råden här är tillämpliga även för datatabeller)

Om listan har kolumnrubriker skall den rubrik som listan är sorterad på vara tydligt markerad, till exempel med fetstil. Den skall inte vara klickbar (med ett undantag, se nedan). Andra möjliga sorteringsrubriker skall vara klickbara och understrukna (här avviks alltså från principen att en länk är något som tar användaren till en annan sida eller någon annanstans på samma sida) alternativt knappar.

Nästan alltid räcker det med en sorteringsordning per kolumn. Att kunna sortera i både stigande och fallande ordning medför en komplikation av användargränssnittet som sällan är värd nyttan för användaren.

Om en kolumn ändå behöver kunna sorteras i både stigande och fallande ordning bör den ha skilda kontroller för dessa – till exempel en uppåt- och en nedåtriktad pil.

Alternativt kan man följa den konvention som finns i Windows och låta sorteringsordningen växla för varje klick på kolumnrubriken – varannan gång blir den alltså stigande, varannan fallande. Personligen är jag mycket tveksam till detta, det bryter mot den grundläggande principen att en handling skall ha samma effekt varje gång den utförs. Men många användare har nu lärt sig att förvänta sig växlande sorteringsordning och onekligen är det renare och tar mindre plats än att ha skilda kontroller, så du måste själv ta ställning till vilken linje som gäller på din webbplats – och testa att den fungerar för dina användare. Om man går på denna linje är kolumnhuvudet alltid klickbart, så det bör få en title-text som berättar att det styr sorteringsordningen, för att inte användare med skärmläsare skall blir förvirrade.

Vilken ordning som gäller för ögonblicket kan markeras med en pil eller triangel efter kolumnrubriken. Om det är datum som sorteras betyder en uppåtriktad pil att det färskaste datumet är överst i listan. Om det är nummer betyder uppåtriktad pil att högsta numret kommer överst i listan.

Alfabetet sorteras aldrig i omvänd ordning.

Om användaren har valt en sortering kan det i en del fall vara uppskattat om denna sparas (t.ex. med hjälp av en kaka), så att den finns kvar nästa gång hon kommer till sidan.

Även listor utan kolumner kan sorteras, förutsatt att sorteringsbegreppen är tydliga. Ett sådant exempel är sökresultatlistor som vanligen först visas i relevansordning, men ofta kan sorteras om i datumordning (se Visa träffarna i relevans- och/eller tidsordning, sid 213 ).