window.pipedriveLeadboosterConfig = { bas: 'leadbooster-chat.pipedrive.com', företagId: 11580370, playbookUuid: '22236db1-6d50-40c4-b48f-8b11262155be', version: 2, } ;(funktion () { var w = fönster if (w.LeadBooster) { console.warn('LeadBooster finns redan') } annars { w.LeadBooster = { q: [], on: funktion (n, h) { this.q.push({ t: "o", n: n, h: h }) }, trigger: funktion (n) { this.q.push({ t: 't', n: n }) }, } } })() 4 vanliga problem med webbtillgänglighet att känna till - The Codest
Codest
  • Om oss
  • Tjänster
    • Utveckling av programvara
      • Frontend-utveckling
      • Backend-utveckling
    • Staff Augmentation
      • Frontend-utvecklare
      • Backend-utvecklare
      • Dataingenjörer
      • Ingenjörer inom molntjänster
      • QA-ingenjörer
      • Övriga
    • Det rådgivande
      • Revision och rådgivning
  • Industrier
    • Fintech & bankverksamhet
    • E-commerce
    • Adtech
    • Hälsoteknik
    • Tillverkning
    • Logistik
    • Fordon
    • IOT
  • Värde för
    • VD OCH KONCERNCHEF
    • CTO
    • Leveranschef
  • Vårt team
  • Fallstudier
  • Vet hur
    • Blogg
    • Möten
    • Webbinarier
    • Resurser
Karriär Ta kontakt med oss
  • Om oss
  • Tjänster
    • Utveckling av programvara
      • Frontend-utveckling
      • Backend-utveckling
    • Staff Augmentation
      • Frontend-utvecklare
      • Backend-utvecklare
      • Dataingenjörer
      • Ingenjörer inom molntjänster
      • QA-ingenjörer
      • Övriga
    • Det rådgivande
      • Revision och rådgivning
  • Värde för
    • VD OCH KONCERNCHEF
    • CTO
    • Leveranschef
  • Vårt team
  • Fallstudier
  • Vet hur
    • Blogg
    • Möten
    • Webbinarier
    • Resurser
Karriär Ta kontakt med oss
Pil tillbaka GÅ TILLBAKA
2022-11-15
Utveckling av programvara

4 vanliga problem med webbtillgänglighet att känna till

Codest

Reda Salmi

React Utvecklare

Webben används av miljontals olika människor varje dag, och ett av våra huvudmål som utvecklare är att göra webben tillgänglig för alla. I den här artikeln presenteras några vanliga webbtillgänglighetsproblem och sätt att lösa dem.

Problem med kontrastförhållandet

Det vanligaste tillgänglighetsproblemet som jag har sett genom åren är kontrast- och färgtillgänglighetsproblemEtt dåligt kontrastförhållande gör det svårt att se innehållet på din sida och det är mycket skadligt för dina användare, inklusive personer med synnedsättning.

Kontrast är ett mått på skillnaden i upplevd "luminans" eller ljusstyrka mellan två färger, t.ex. skillnaden mellan bakgrundsfärgen och förgrundsfärgen på sidans innehåll. Låt oss ta en titt på det här navfältet.

navigerande<em>fält</em>med<em>gröna</em>texter

Låt oss säga att din kund verkligen gillar den grönaktiga färgen och tycker att den är fantastisk, men det finns ett problem här med kontrasten. Vi har en #FFFFFF bakgrund med en #83A94C textfärg, vilket resulterar i ett kontrastförhållande på 2,71:1, vilket är långt under minimikravet 4.5:1 behövs. För att upptäcka detta problem har vi flera lösningar:

  1. Använd en kontrastkontroll online som t.ex. Webaim kontrastkontrollsom beräknar kontrastförhållandet och ger dig ett Passera eller Misslyckas betyg.
  2. Använd ett av de många webbläsartilläggen för kontrastkontroll, t.ex: WCAG Kontroll av färgkontrast.
  3. Testa webbläsarens integrerade kontrastkontroll. För att använda den på Google Chrome, öppna dev-verktygen, inspektera det riktade elementet (ex: Hemlänk i vårt navfält), gå till CSS-färgegenskapen och klicka på färgrektangeln för att öppna färgväljaren, längst ner kommer du att presenteras med ett kontrastförhållandevärde, expandera det för mer information. Processen är exakt densamma för Firefox, bara en liten skillnad i förhållandet visas längst ner till vänster i färgväljaren.
svart<em>bakgrund</em>med<em>blå</em>kod

För att få mer information om kontrast, kolla här Kontrast och färg Tillgänglighet Artikel.

Problem med länktext

Länkar är en stor del av webben idag, så det är mycket viktigt att göra dem tillgängliga. En länk måste vara begriplig och informera användaren om sitt sammanhang, så en oinformativ länk med text som läs mer, klicka här, kolla detaljer är inte till någon större hjälp, så istället för att lägga till "kolla detaljer" för Produkt detaljer, t.ex. är det bättre och mer informativt att använda produktnamnet som "The Mandalorian Helmet". Ord som Klicka här eller mer om kan utelämnas eftersom en länk är klickbar som standard och något i stil med "mer om dagens nyheter" kan förkortas till "dagens nyheter". Det finns ingen särskild regel eller gräns för länklängd, utan länken måste vara läsbar och tillräckligt lång för att ge en bra beskrivning av dess syfte.

Bilder som länkar är ett vanligt förekommande mönster, så det måste följa samma regler som vi har pratat om ovan. Bildens alt-attribut kommer att spela rollen som länktext och meddelas av skärmläsare. Det finns flera olika scenarier när man behandlar bilder som länkar, om bilden är det enda innehållet i länken måste den ha ett alt-attribut, om länken har lite text och bild i sig kan vi utelämna alt-attributet, här är några exempel:


<a href="/sv/notifications/">
  <img src="/img/notification.png" alt="Meddelanden">
</a>

Kolla in några länkar här för att läsa om tillgänglighet för länkar:Länktext och utseende, Funktionella bilder.

Formulärinmatning saknar en etikett

input<em>labels</em>med<em>blå</em>knapp

Vi har alla sett dessa formulärinmatningar tidigare utan etikett och bara en platshållare för att beskriva syftet med inmatningen. En första anmärkning är att så snart användaren fyller i alla inmatningar och platshållarna inte syns längre kommer vi inte att ha något visuellt sammanhang om inmatningens syfte, men låt oss fokusera på tillgängligheten här.

Att associera en etikett till en inmatning ger oss två stora fördelar: en skärmläsare läser upp etiketten när användaren fokuserar på formulärinmatningen och när en etikett klickas eller vidrörs/knackas på flyttar webbläsaren fokus till den tillhörande inmatningen. En enkel lösning för den här typen av situation är att bara lägga till etiketter enligt följande:

    Förnamn

    
  

    Efternamn

    
  

    E-post

    
  

    Skicka in
  

```

Nu har alla inmatningar fått sina tillhörande etiketter, vilket gör dem tillgängliga för alla. Vi kan till och med ta bort platshållarna för att undvika att duplicera inmatningens syfte, men vi vet alla att verkliga scenarier inte är så lätta att hantera, du har just fått en design som har dessa formulärinmatningar utan etiketter och kunden vill inte ändra den delen. Den första lösningen som kommer att tänka på är att tillämpa en display: ingen; eller synlighet: dold; till våra etiketter, kommer detta att dölja dem men de är fortfarande där, eller hur? Dessa egenskaper döljer element inte bara på skärmen utan även för skärmläsaranvändare, så detta kommer inte att lösa vårt problem.

Vi kan använda klippmönster för att lösa detta. På så sätt kommer vi att dölja innehållet visuellt, men ändå tillhandahålla innehållet till skärmläsare. Vi kommer att skapa följande CSS sr-endast och tillämpa den på alla våra etiketter:

 .sr-only:not(:focus):not(:active) {
   clip: rect(0 0 0 0);
   clip-path: inset(50%);
   höjd: 1px;
   överflöde: dold;
   position: absolut;
   white-space: nowrap;
   bredd: 1px;
 }

Detta döljer våra etiketter, gör dem tillgängliga för skärmläsare och matchar vår design. Den :inte(:fokus):inte(:aktiv) pseudoklass förhindrar fokuserbara element som t.ex. a, knapp, inmatning från att vara dolda när de får fokus.

Ingen fokusindikator

En gång i tiden gjorde jag detta på min globala CSS-stilmall:

* {
outline: none; /* fruktansvärt misstag */
}

Runt 2020 märkte jag svarta kanter som dyker upp på Google Chrome-formuläringångar när de fokuserades eller på knapparna när de tabbades in - det var väldigt konstigt eftersom jag inte förstod det vid den tiden, efter lite forskning har jag fått reda på att det beror på CSS-egenskapen outline så att ta bort löste det "problemet" för mig.

Vid den tidpunkten hade jag ingen aning om vad som var det rätta sättet att göra det. Efter att ha undersökt varför och hur den nya standardinställningen fungerar fick jag reda på att outline är en fokusindikator för element och om den tas bort måste en uppenbar fokusstyling tillhandahållas, vilket i princip är vad jag gjorde som anses vara en dålig praxis. Du kan anpassa fokusindikatorer som du vill, men att ta bort dem helt från webbplatsen är ett stort tillgänglighetsproblem. Det är till exempel ganska enkelt att anpassa en fokusstyling för element:

 a:fokus {
   outline: 4px solid #ee7834;
   outline-offset: 4px;
 }

Verktyg för tillgänglighet

Att kontrollera alla de frågor vi har pratat om kan vara mycket arbete, särskilt med tanke på att det finns mycket mer att göra om tillgänglighet, så för att hjälpa oss att hantera tillgängligheten har vi två fantastiska webbläsartillägg.

WAVE utvärderingsverktyg är en uppsättning utvärderingsverktyg som hjälper oss att göra vårt webbinnehåll mer tillgängligt. Den finns tillgänglig i både Google Chrome och Firefox.

Låt oss prova det på en liten webbsida som innehåller ett navfält och en inmatning som saknar en etikett och se vad den returnerar, efter att ha installerat tillägget behöver vi bara klicka på tilläggsikonen för att använda den.

vitt<em>fönster</em>med<em>grå</em>partier

Fliken Sammanfattning visar 1 fel (formulärelement saknar etikett), 2 kontrastfel och 1 varning (rubrikstruktur saknas), som du kan se är resultatet mycket tydligt och detaljerat. På fliken Detaljer visas en lista över alla fel, varningar och funktioner. Vi kan också interagera direkt på sidan genom att klicka på de röda rektanglarna för att kontrollera felbeskrivning och feltyp.

Axe DevTools är en kraftfull och exakt verktygslåda för tillgänglighet. Det finns tillgängligt i både Google Chrome och Firefox. Efter att ha installerat tillägget måste vi öppna webbläsarens utvecklingsverktyg och gå till fliken Axe DevTools och klicka på Skanna alla mina sidor.

DevTools<em>fönster</em>med<em>svarta</em>gråa_sektioner

Du kan se att Axe DevTools har rapporterat samma problem med WAVE Evaluation Tool, vilket är kontrastproblem, formulärelement som saknar en etikett och saknade rubrikelement, och det gav oss även några bästa metoder att följa.

Ett ytterligare sätt att testa tillgängligheten är att använda en skärmläsare och testa webbplatsen med den. Det finns många olika skärmläsare, för att bara nämna några:

  • NVDA
  • VoiceOver är tillgänglig på macOs enheter.
  • Orca är en skärmläsare med fri och öppen källkod för Linux.

Sammanfattning

I den här artikeln har vi tagit upp några vanliga problem med webbtillgänglighet, sätt att lösa dem och några bra verktyg för att testa webbtillgängligheten. Det finns fortfarande mycket mer att ta upp om tillgänglighet för element som dialogrutor, dragspel och karuseller, men som du har sett i den här artikeln finns det gott om dokumentation och verktyg som hjälper dig att hantera tillgänglighet.

Några viktiga punkter att komma ihåg:

  • Kontrollera alltid kontrastförhållandet.
  • Tillhandahåll alltid informativt innehåll till länkar.
  • Ett formulärelement måste ha en etikett kopplad till sig.
  • Tydlig fokusering måste tillhandahållas.
karriär på codest

Relaterade artiklar

E-commerce

Dilemman inom cybersäkerhet: Dataläckage

Julruschen är i full gång. I jakt på presenter till sina nära och kära är människor alltmer villiga att "storma" onlinebutiker

Codest
Jakub Jakubowicz CTO och medgrundare
Utveckling av programvara

Javascript-verktyg i aktion

Upptäck några verktyg för att hämta JavaScript för att höja nivån på ditt programmeringsspel. Läs mer om ESLint, Prettier och Husky!

Codest
Reda Salmi React Utvecklare
Utveckling av programvara

9 misstag att undvika när du programmerar i Java

Vilka misstag bör man undvika när man programmerar i Java? I följande stycke besvarar vi denna fråga.

Codest
Rafal Sawicki Java-utvecklare

Prenumerera på vår kunskapsbas och håll dig uppdaterad om expertisen från IT-sektorn.

    Om oss

    The Codest - Internationellt mjukvaruutvecklingsföretag med teknikhubbar i Polen.

    Förenade kungariket - Huvudkontor

    • Kontor 303B, 182-184 High Street North E6 2JA
      London, England

    Polen - Lokala tekniknav

    • Fabryczna Office Park, Aleja
      Pokoju 18, 31-564 Kraków
    • Brain Embassy, Konstruktorska
      11, 02-673 Warszawa, Polen

      Codest

    • Hem
    • Om oss
    • Tjänster
    • Fallstudier
    • Vet hur
    • Karriär
    • Ordbok

      Tjänster

    • Det rådgivande
    • Utveckling av programvara
    • Backend-utveckling
    • Frontend-utveckling
    • Staff Augmentation
    • Backend-utvecklare
    • Ingenjörer inom molntjänster
    • Dataingenjörer
    • Övriga
    • QA-ingenjörer

      Resurser

    • Fakta och myter om att samarbeta med en extern partner för mjukvaruutveckling
    • Från USA till Europa: Varför väljer amerikanska startup-företag att flytta till Europa?
    • Jämförelse av Tech Offshore Development Hubs: Tech Offshore Europa (Polen), ASEAN (Filippinerna), Eurasien (Turkiet)
    • Vilka är de största utmaningarna för CTO:er och CIO:er?
    • Codest
    • Codest
    • Codest
    • Privacy policy
    • Användarvillkor för webbplatsen

    Copyright © 2025 av The Codest. Alla rättigheter reserverade.

    sv_SESwedish
    en_USEnglish de_DEGerman da_DKDanish nb_NONorwegian fiFinnish fr_FRFrench pl_PLPolish arArabic it_ITItalian jaJapanese ko_KRKorean es_ESSpanish nl_NLDutch etEstonian elGreek sv_SESwedish