SlideShare a Scribd company logo
1 of 62
WCAG 2.1 for deg og meg –
21 nye krav til Universell Utforming
WCAG 2.1 for deg og meg –
17 nye krav til Universell Utforming
WCAG 2.0
Desember
2008
Første
iPhone
Januar 2007
WCAG 2.1
Juni
2018
Nytt i WCAG 2.1
1.3.4 Identify Common Purpose
1.3.5 Identify Purpose
1.4.10 Reflow
1.4.11 Non-Text Contrast
1.4.12 Text Spacing
1.4.13 Content on Hover or Focus
2.2.6 Timeouts
2.2.7 Animation from Interactions
2.4.11 Character Key Shortcuts
2.4.12 Label in Name
2.5.1 Pointer Gestures
2.5.2 Pointer Cancellation
2.5.3 Target Size
2.5.4 Concurrent Input Mechanisms
2.6.1 Motion Actuation
2.6.2 Orientation
3.2.6 Status Changes
1.3.4 Identify Common Purpose
Felter
ARIA (AUI Module) Autocomplete Description
streetAddress street-address full street address
condensed into one line
city city locality or city
area area administrative area, state,
province, or region
postalcode postal-code postal or ZIP code
country country country name
Knapper
ARIA (AUI Module) Schema.org Description
signin
http://schema.org/InteractAct
ion/SignInAction
sign in to current web site or
application
save
http://schema.org/UpdateActi
on/SaveAction
save the current content
next (aui-action)
http://schema.org/MoveActio
n?ToLocation=Next
move to the next item in the
series
previous (aui-action)
http://schema.org/MoveActio
n?ToLocation=Previous
move to the previous item in
the series
1.3.4 Identify Common Purpose
Autocomplete for felter
Schema.org for knapper
1.3.4 Identify Common Purpose
Fra dette:
Telefon
Lagre
1.3.4 Identify Common Purpose
Til dette:
22222222Telefon
Lagre Ctrl + S
1.3.5 Identify Purpose
1.3.5 Identify Purpose
<span aria-numberfree="nesten alle">9 av 10 </span>
<span aria-literal=”det regner mye”>det bøtter ned</span>
1.4.10 Reflow
400% zoom
1.4.11 Non-Text Contrast
1.4.12 Text Spacing
1.4.12 Text Spacing
• Linjeavstand: 1,5 * fontstørrelsen
• Avsnitt: 2 * fontstørrelsen
• Tegnavstand: 0,12 * fontstørrelsen
• Ordavstand: 0,16 * fontstørrelsen
1.4.13 Content on Hover or Focus
Dismissible
Hoverable
Persistent
Dismissible
Hoverable
Persistent
Dismissible
Hoverable
Persistent
2.2.6 Timeouts
Tilby mer tid!
Autolagring
2.2.7 Animation from Interactions
@media (prefers-reduced-motion)
Slå av
2.4.11 Character Key Shortcuts
Hurtigtaster
med en bokstav
Skru av
Endre
2.4.12 Label in Name
Det du ser = Det du hører
2.5.1 Pointer Gestures
2.5.2 Pointer Cancellation
Gi brukeren mulighet til å angre
2.5.3 Target Size
44 px
2.5.4 Concurrent Input Mechanisms
2.6.1 Motion Actuation
Ja takk, begge deler!
2.6.2 Orientation
3.2.6 Status Changes
Statusendringer
borte fra fokus
Hva forsvant?
● Accessible Authentication
○ Passordfri innlogging.
● Interruptions (Minimum)
○ Mulighet for å pause eller skru av forstyrrelser som popups, varsler, o.l.
● Target Size - Enhanced (AAA)
○ Erstattet av Target Size (AAA) (med unntak)
● User Interface Component Contrast (Minimum)
○ Slått sammen med Non-Text Contrast
EN 301 549
Nytt i WCAG 2.1
1.3.4 Identify Common Purpose
1.3.5 Identify Purpose
1.4.10 Reflow
1.4.11 Non-Text Contrast
1.4.12 Text Spacing
1.4.13 Content on Hover or Focus
2.2.6 Timeouts
2.2.7 Animation from Interactions
2.4.11 Character Key Shortcuts
2.4.12 Label in Name
2.5.1 Pointer Gestures
2.5.2 Pointer Cancellation
2.5.3 Target Size
2.5.4 Concurrent Input Mechanisms
2.6.1 Motion Actuation
2.6.2 Orientation
3.2.6 Status Changes
Spørsmål?
Cecilie Haugstvedt
@chaugstvedt
Vegard Haugstvedt
@it_vegard

More Related Content

More from Vegard Haugstvedt

Accessible components for developers and designers
Accessible components for developers and designersAccessible components for developers and designers
Accessible components for developers and designersVegard Haugstvedt
 
Resistance is futile: Start writing accessible websites now!
Resistance is futile: Start writing accessible websites now!Resistance is futile: Start writing accessible websites now!
Resistance is futile: Start writing accessible websites now!Vegard Haugstvedt
 
Offline first with Couchbase Mobile
Offline first with Couchbase MobileOffline first with Couchbase Mobile
Offline first with Couchbase MobileVegard Haugstvedt
 
Booster 2017 - from accessibility n00b to pro in 1.5 hrs
Booster 2017 - from accessibility n00b to pro in 1.5 hrsBooster 2017 - from accessibility n00b to pro in 1.5 hrs
Booster 2017 - from accessibility n00b to pro in 1.5 hrsVegard Haugstvedt
 
Vegard Haugstvedt - Universelt for alle! Hvordan hele teamet kan ha et forhol...
Vegard Haugstvedt - Universelt for alle! Hvordan hele teamet kan ha et forhol...Vegard Haugstvedt - Universelt for alle! Hvordan hele teamet kan ha et forhol...
Vegard Haugstvedt - Universelt for alle! Hvordan hele teamet kan ha et forhol...Vegard Haugstvedt
 

More from Vegard Haugstvedt (6)

Accessible components for developers and designers
Accessible components for developers and designersAccessible components for developers and designers
Accessible components for developers and designers
 
WCAG 2.1 for you and me
WCAG 2.1 for you and meWCAG 2.1 for you and me
WCAG 2.1 for you and me
 
Resistance is futile: Start writing accessible websites now!
Resistance is futile: Start writing accessible websites now!Resistance is futile: Start writing accessible websites now!
Resistance is futile: Start writing accessible websites now!
 
Offline first with Couchbase Mobile
Offline first with Couchbase MobileOffline first with Couchbase Mobile
Offline first with Couchbase Mobile
 
Booster 2017 - from accessibility n00b to pro in 1.5 hrs
Booster 2017 - from accessibility n00b to pro in 1.5 hrsBooster 2017 - from accessibility n00b to pro in 1.5 hrs
Booster 2017 - from accessibility n00b to pro in 1.5 hrs
 
Vegard Haugstvedt - Universelt for alle! Hvordan hele teamet kan ha et forhol...
Vegard Haugstvedt - Universelt for alle! Hvordan hele teamet kan ha et forhol...Vegard Haugstvedt - Universelt for alle! Hvordan hele teamet kan ha et forhol...
Vegard Haugstvedt - Universelt for alle! Hvordan hele teamet kan ha et forhol...
 

Recently uploaded

Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldRoberto Pérez Alcolea
 
Zer0con 2024 final share short version.pdf
Zer0con 2024 final share short version.pdfZer0con 2024 final share short version.pdf
Zer0con 2024 final share short version.pdfmaor17
 
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingOpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingShane Coughlan
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorTier1 app
 
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...Bert Jan Schrijver
 
Patterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencePatterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencessuser9e7c64
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfRTS corp
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Rob Geurden
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?Alexandre Beguel
 
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...OnePlan Solutions
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZABSYZ Inc
 
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdfAndrey Devyatkin
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingOpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingShane Coughlan
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identityteam-WIBU
 
Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLionel Briand
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonApplitools
 
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptxReal-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptxRTS corp
 

Recently uploaded (20)

Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository world
 
Zer0con 2024 final share short version.pdf
Zer0con 2024 final share short version.pdfZer0con 2024 final share short version.pdf
Zer0con 2024 final share short version.pdf
 
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingOpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryError
 
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
 
Patterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencePatterns for automating API delivery. API conference
Patterns for automating API delivery. API conference
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?
 
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZ
 
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
2024-04-09 - From Complexity to Clarity - AWS Summit AMS.pdf
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingOpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identity
 
Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and Repair
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
 
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptxReal-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
Real-time Tracking and Monitoring with Cargo Cloud Solutions.pptx
 

WCAG 2.1 for deg og meg – 17 nye krav til Universell Utforming

Editor's Notes

  1. C: [00:00]Da vi sendte inn denne presntasjonen valgte vi tittelen WCAG2.1 - 21 nye krav til universell utforming.
  2. C: I tiden mellom vi sendte inn og nå er fire krav borte. Det oppdaterte navnet på presentasjonen er dermed WCAG 2.1 - 17 nye krav til universell utforming. Holder vi presentasjonen i høst er det en risiko for at tallet ville vært enda litt lavere.
  3. C: Så hva er WCAG 2.1? WCAG 2.0 er en standard med retningslinjer for tilgjengelig webinnhold. WCAG 2.1 er en oppdatert versjon av denne standarden som inneholder alle retningslinjene fra 2.0 pluss de nye vi skal gå gjennom i dag.
  4. V: [01:30] “Hva gjør det?” heller enn “Hva er det”? Gjelder for knapper, lenker og inputfelter - bruker standardiserte roller og funksjoner for å beskrive formålet med elementet. Hvilken informasjon skal fylles inn, hva gjør denne knappen, etc. Felles formål. Mer informasjon om knapper og felt gjør det mulig for brukere å tilpasse nettleseren. Personalisering. Autocomplete.
  5. V: Noen eksempler kan være i et registreringsskjema, så kan man bruke autocomplete eller AUI-standarden for å angi at et felt skal fylles ut med gateadressen, bynavn, postnummer eller land.
  6. V: Tilsvarende skal knapper markeres for å vise om de er en lagre-knapp, innloggingsknapp, eller en neste- eller forrige-knapp. Disse vil typisk markeres med referanser til schema.org-skjemaer.
  7. V: Kort oppsummert vil man altså bruke autocomplete-attributtet for inputfelter, og schema.org for knapper og lenker.
  8. V: Slik markering kan bidra til flere forbedringer for brukeren - og både for brukere med funksjonsnedsettelser og alle oss andre.
  9. V: For eksempel kan et inputfelt automatisk fylles ut, med større sikkerhet enn i dag. Eventuelt kan brukeren bruke en nettleserutvidelse for å markere inputfelter med et ikon de kjenner igjen, slik at det er lettere for de å finne igjen og å forstå skjemafelter. Markering av knapper og lenker vil også kunne la brukeren ha tilpassede hurtigtaster, enten gjennom skjermleser eller f.eks. nettleserutvidelser.
  10. V: [04:00] Identify purpose er et AAA-krav, som altså normalt ikke er inkludert i norsk lov.
  11. V: Kort fortalt bygger dette kravet på det forrige, og inkluderer i tillegg symboler, regioner med mer. Målet er ytterligere personalisering, ved for eksempel å kunne bytte ut ikonsett med sine egne, forenkle språket, osv. Som vi ser over kan man for eksempel bytte ut det matematiske uttrykket “9 av 10” med et litt mindre nøyaktig uttrykk som “nesten alle”. For en del brukere vil det gjøre innholdet lettere å forstå.
  12. C: [05:00] Punkt 1.4.10 er Reflow. Zoom, eller omorganisering på godt norsk.
  13. Mer nøyaktig: 400% zoom. Det er så mye du skal kunne forstørre en nettside uten at du ender opp med to rullefelt. Responsiv design er løsningen her.
  14. C: VG sin nettside er et eksempel på hvordan du ikke skal gjøre dette. Dette skjermbildet er fra laptopen min. Allerede uten å zoome må jeg bruke scrollbaren på bunnen av siden for å se alt innholdet
  15. C: Dagbladet har gjort en mye bedre jobb med responsiv design. Her kan du fint zoome inn både
  16. C: [07:00] 1.4.11 går på fargekontrast på ikke-tekstlige elementer. WCAG 2.0 dekker allerede fargekontrast på tekst.
  17. C: Fargekontrast er et av WCAG-kravene som burde være lette å dekke. Likevel syndes det stadig. Her er Google sitt hjelpeforum.
  18. C: All teksten som er markert bryter med kontrastkravene i WCAG 2.0
  19. C: I WCAG 2.1 kommer det også krav til brukergrensesnittkomponentene.
  20. V: [09:00] Avstanden mellom avsnitt, linjer, ord og tegn skal kunne økes uten at innhold skjules.
  21. V: Her har man basert seg på noen standarder
  22. V: Et typisk eksempel er er tekst som flyter bak bilder, kuttes i skjermkanten eller at høyden på containeren er fast, og innholdet dermed går over for mange linjer.
  23. V: I stedet er det bedre om teksten bryter over flere linjer og wrappes rundt bildet.
  24. V: [10:00] Dette kravet gjelder for nedtrekksmenyer, tooltips og lignende som vises ved hover eller fokus. Det gjelder da tre prinsipper:
  25. V: I tilfeller som her hos Ebay vil man ved å flytte musen nedover fra toppen trigge menyen, og den fjernes ikke før musen er flyttet helt ned til under menyen. Første krav her er da at innholdet skal kunne fjernes uten å flytte musen. En standard løsning for dette er å kunne trykke Escape.
  26. V: Brukeren skal kunne flytte musepekeren over til innholded som vises ved hover, uten at dette forsvinner. Det kan f.eks. være et problem for tooltips, da disse ofte er plassert litt unna knappen/lenken/inputfeltet, slik at du ikke lenger hovrer når du flytter musen mot tooltipen.
  27. V: Til slutt skal innholdet vises frem til brukeren fjerner fokus eller hover. Dette er ment å skulle forhindre at det f.eks. har en timer for hvor lenge det kan vises.
  28. V: [12:00] Suksesskriterie 2.2.6 går på at brukeren skal få nok tid til å utføre oppgaven sin.
  29. V: Kort fortalt sier dette kravet at brukeren skal få spørsmål om han eller hun trenger mer tid, slik at de ikke timer ut.
  30. V: Kravet om å tilby mer tid faller bort dersom innholdet brukeren har lagt inn automatisk mellomlagres i minst 20 timer. Her er det viktig å tenke på GDPR, da det i mange tilfeller ikke er lovlig å mellomlagre dataene, og i hvert fall ikke uten tillatelse. Å gi brukeren mulighet til å be om mer tid er derfor den beste løsningen. Til Yggdrasil? Dette kravet kan eksemplifiseres med et eksempel fra et forsikringsselskap jeg har jobbet hos: En dag fikk vi melding fra en sint kunde som hadde brukt over en time på å fylle ut en helseerklæring. Vi hadde 75 punkter som måtte fylles ut HVIS kunden hadde noe å fylle ut der. Normalt ville dette tilsi at kunden fylte ut 3-5 punkter, men denne kunden måtte fylle ut nesten alle, og måtte lete opp masse informasjon underveis. Vi hadde 45 minutter timeout, og når kunden skulle sende inn skjemaet var han logget ut. På grunn av personvernloven (og nå GDPR) kunne vi ikke mellomlagre informasjonen, og siden kunden ikke fikk spørsmål om mer tid hadde han mistet alle dataene, og måtte fylle ut skjemaet på nytt. Naturlig nok mistet vi den kunden...
  31. C: [14:00] 2.2.7 Animasjon fra interaksjoner. WCAG 2.0 har allerede et krav om at brukeren skal kunne stoppe, pause eller skjule innhold som automatisk endrer seg. Dette kravet går på animasjoner som starter fordi du beveger musen eller scroller.
  32. C: Parallakse scrolling er et eksempel på animasjoner som starter når brukeren interagerer med siden. På websiden det er bilde av her brukes dette til å guide nedover siden. Enkelte norske nettaviser bruker samme effekt for å vise fram bilder underveis i artikler. Utfordringen med å dette er at enkelte sliter med migrene og svimmelhet forårsaket av animasjonene. Hvordan kan vi hjelpe?
  33. C: En løsning er å bruke css media query prefers-reduced-motion og lage et alternativ uten animasjoner for brukere som har satt opp at de ønsker det
  34. C: En annen løsning er å legge til en kontroll på toppen av siden der brukeren kan skru av animasjoner før de begynner å scrolle. Det er selvfølgelig også mulig å kombinere disse teknikkene.
  35. C: [16:00]
  36. C: Kravet gjelder hurtigtaster med en bokstav, ikke standard hurtigtaster som er styrt av operativsystemet slik som ctrl + c, eller eple + p. Hurtigtaster med en bokstav er effektivt for mange ekspertbrukere, men skaper store problemer for personer som bruker talestyring eller kommer borti tastaturet ved et uhell.
  37. C: For å unngå problemet kan du gi brukeren muligheten til å skru av hurtigtastene.
  38. C: En annen måte å løse problemet på er å la brukeren endre hurtigtastene.
  39. V: [18:00] For det neste kravet må jeg først forklare en liten detalj for tilgjengelighetsverktøy. Kort fortalt har HTML-elementer en visuell tekst eller label, som er teksten vi ser på nettsiden, samt et “navn”, som er teksten som leses opp av skjermlesere og lignende verktøy. Det tilgjengelige navnet kan påvirkes med bruk av alt-tekst i bilder, aria-label, med mer.
  40. V: Det dette kravet sier, er at det tilgjengelige navnet skal inneholde den visuelle teksten, gjerne i starten av navnet og helst skal de være lik. Dette påvirker både folk som kan se, men bruker skjermleser for å hjelpe seg med å oppfatte innholdet, men også kul, ny teknologi som stemmestyring. Det er mulig å navigere nettsider med talekommandoer. For eksempel kan man klikke på en knapp ved å si navnet til knappen. Da er det viktig at den visuelle teksten også er inkludert i det tilgjengelige navnet, slik at stemmestyringsverktøyet forstår hva den skal klikke på. Metoder som kan bryte dette kravet er feil bruk av aria-label, da denne fullstendig overstyrer navnet. Aria-describedby, derimot, inkluderer ekstra tekst i slutten av navnet, og oppfyller derimot kravet.
  41. C: [20:00]
  42. C: Alle sider som bruker komplekse bevegelser for å navigere skal også kunne navigeres med et enkelt trykk. Google maps har gjort dette halvveis. Du kan zoome ved å spre fingrene, men også ved å trykke på pluss og minus. Skulle de møtt hele kravet måtte de også hatt piler for å navigere kartet. Slik det er nå er eneste muligheten å dra kartet rundt med mus eller fingeren. Fordelen med å støtte er flersidig: du hjelper brukere som er ute av stand til å gjennomføre komplekse bevegelser grunnet funksjonsnedsettelser, du hjelper nybegynnere som ikke kan de komplekse bevegelsene og du hjelper personer med kognitive funksjonsnedsettelser som sliter med å huske de komplekse bevegelsene.
  43. C: DNB har gjort en god jobb her med å ha pluss og minus på hver side av slideren. Det er fire måter å justere beløpene på: du kan bruke pluss og minus, du kan dra slideren, du kan trykke på ønsket posisjon og du kan skrive inn tallet direkte.
  44. C: [22:00]
  45. C: No Down-Event The down-event of the pointer is not used to execute any part of the function; Abort or Undo Completion of the function is on the up-event, and a mechanism is available to abort the function before completion or undo the function after completion; Up Reversal The up-event reverses any outcome of the preceding down-event; Essential Completing the function on the down-event is essential.
  46. V: [24:00] Dette kravet er enkelt, og er noe jeg og flere har krevd i prosjekter i flere år:
  47. V: Klikkflater skal være minimum 44 * 44 pixler. Så enkelt. Dette kreves for å hjelpe brukere med motoriske vansker, slik at det er lettere å trykke på for eksempel en knapp med fingeren eller en mus. Nå er dette kravet definert som AAA-nivå, som ikke er påkrevd ved norsk lov. Det er gjort fordi man ikke klarte å bli enige om fornuftige nok krav og unntak til at det kunne legges på AA-nivået. Men selv som AAA-krav har vi flere unntak her, for eksempel lenker inn i tekst, der funksjonaliteten er tilgjengelig et annet sted på siden som oppfyller kravet eller om størrelsen bestemmes av brukerens enhet.
  48. V: [25:30] Det neste kravet skal sikre at brukeren kan bruke siden med flere inputmetoder.
  49. V: Dette vil si at brukeren skal kunne bruke tastatur, touch, mus, stylus, eller tale, forutsatt at enheten støtter denne input-måten. I praksis vil dette si at JavaScript-applikasjoner ikke bare skal fungere med touch-, mus- eller tastaturevents. Feature-lytting eller media-queries for å finne primær-input er være røde flagg i denne sammenhengen.
  50. C: [27:00]
  51. C:
  52. C: Tilting? Risting? Bra, men ha et alternativ
  53. C: [29:00]
  54. C: Med mindre det er en spesiell grunn til det bør en app støtte både horisontal og vertikal visning.
  55. V: [31:00] Det siste nye kravet i WCAG 2.1 sier at hjelpeteknologi skal få beskjed om innhold som oppdateres dynamisk uten at fokus flyttes. For eksempel ved bruk av skjermlesere leses innholdet opp basert på hvor det virtuelle fokuset er på siden. For å oppfylle dette kravet må essensielle oppdateringer vises i elementer som er markert at kan oppdateres, slik at skjermleseren avbryter for å lese opp varsler. I praksis betyr dette bruk av aria-live, role=alert og lignende metoder.
  56. V: Men det er viktig at bare viktige statusendringer annonseres, og ikke alle endringer på siden. Eksempelet her viser filopplasting i OneDrive. Brukeren bryr seg nok ikke om hver fil som blir ferdig lastet opp, men ønsker typisk å få beskjed når hele opplastingen er ferdig. Viktig å vurdere hvor ofte endringene annonseres, og gi brukeren mulighet til å skru av varslingen. Dette kan gjøres for eksempel med aria-live=”polite”, som samler opp varsler eller venter til en pause, heller enn å avbryte midt i teksten.
  57. V: [32:30] Fire suksesskriterier ble altså fjernet til den nest siste versjonen av WCAG 2.1. Disse ble alle fjernet fordi man ikke klarte å bli enig om en utvetydig formulering eller hvilke unntak som skulle gjelde. Spesielt vil jeg bemerke Accessible Authentication, som ville kreve passordfri pålogging. Eksempler på det er Slack sin “magic link”, men kravet ville også være oppfylt med å ha en “glemt passord”-funksjon, som er hvordan overraskende mange brukere logger inn. I tillegg var det synd at Target Size ikke ble tatt med som et AA-krav, da det gjør at det ikke blir påkrevd gjennom norsk lov. Derimot er det et bra UX-prinsipp, som uanett bør følges.
  58. Hva med Norge? Vi har hørt med Difi og det mest sannsynlige er at lovgivningen i Norge går bort fra å referere til WCAG og i stedet refererer til EN 301 549 som igjen referer til WCAG. EU stiller kun krav til offentlige nettsteder og applikasjoner. Norge står fritt til å implementere en strengere versjon og kommer til å fortsette å stille krav til virksomheter i både offentlig og privat sektor, samt lag og organisasjoner
  59. C: [34:00]
  60. C: [35:00] Har neppe tid til spørsmål nå, men spør gjerne etterpå.