{"id":3142,"date":"2022-11-15T10:09:22","date_gmt":"2022-11-15T10:09:22","guid":{"rendered":"http:\/\/the-codest.localhost\/blog\/4-common-web-accessibility-issues-to-know\/"},"modified":"2026-03-09T13:10:53","modified_gmt":"2026-03-09T13:10:53","slug":"kontrastisuhteen-ongelma","status":"publish","type":"post","link":"https:\/\/thecodest.co\/fi\/blog\/contrast-ratio-issue\/","title":{"rendered":"4 yleist\u00e4 web-saavutettavuusongelmaa, jotka on hyv\u00e4 tiet\u00e4\u00e4"},"content":{"rendered":"<h2 class=\"wp-block-heading\">Kontrastisuhteen ongelma<\/h2>\n\n\n\n<p>Yleisin esteett\u00f6myysongelma, jonka olen n\u00e4hnyt vuosien varrella, on se, ett\u00e4 <b>kontrasti ja v\u00e4rin saavutettavuusongelma<\/b>, huono kontrastisuhde vaikeuttaa sivusi sis\u00e4ll\u00f6n n\u00e4kemist\u00e4, mik\u00e4 on eritt\u00e4in haitallista k\u00e4ytt\u00e4jillesi, my\u00f6s niille, joilla on n\u00e4k\u00f6vamma. <\/p>\n\n\n\n<p>Kontrasti on kahden v\u00e4rin havaitun \"luminanssin\" tai kirkkauden eron mitta, esimerkiksi sivun sis\u00e4ll\u00f6n taustav\u00e4rin ja etualan v\u00e4rin v\u00e4linen ero. Katsotaanpa t\u00e4t\u00e4 navigaattoripalkkia.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"\/app\/uploads\/2024\/05\/01-navbar.png\" alt=\"navigaatiopalkki&lt;em&gt;palkki&lt;\/em&gt;vihreill\u00e4&lt;em&gt;otsikoilla&lt;\/em&gt;\" title=\"navipalkki esimerkki \"\/><\/figure>\n\n\n\n<p>Oletetaan, ett\u00e4 asiakkaasi todella pit\u00e4\u00e4 tuosta vihert\u00e4v\u00e4st\u00e4 v\u00e4rist\u00e4 ja pit\u00e4\u00e4 sit\u00e4 mahtavana, mutta kontrastin kanssa on ongelmia. Meill\u00e4 on&nbsp;<code>#FFFFFFFF<\/code> tausta, jossa on&nbsp;<code>#83A94C<\/code>&nbsp;tekstin v\u00e4ri, jolloin kontrastisuhde on 2,71:1, mik\u00e4 on paljon alle v\u00e4himm\u00e4isvaatimuksen.&nbsp;<strong>4.5:1<\/strong>&nbsp;tarvitaan. T\u00e4m\u00e4n ongelman havaitsemiseksi meill\u00e4 on useita ratkaisuja: <\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>K\u00e4yt\u00e4 verkossa olevaa kontrastin tarkistusohjelmaa, kuten&nbsp;<a href=\"https:\/\/webaim.org\/resources\/contrastchecker\/)\" rel=\"nofollow\">Webaim Contrast Checker<\/a>, joka laskee kontrastisuhteen ja antaa teille&nbsp;<strong>Pass<\/strong>&nbsp;tai&nbsp;<strong>Fail<\/strong>&nbsp;luokka.<\/li>\n\n\n\n<li>K\u00e4yt\u00e4 jotakin monista selaimen kontrastin tarkistuslaajennuksista, esim:&nbsp;<a href=\"https:\/\/chrome.google.com\/webstore\/detail\/wcag-color-contrast-check\/plnahcmalebffmaghcpcmpaciebdhgdf?hl=en)\" rel=\"nofollow\">WCAG V\u00e4rikontrastin tarkistusohjelma<\/a>.<\/li>\n\n\n\n<li>Kokeile selaimen integroitua kontrastin tarkistusohjelmaa. Voit k\u00e4ytt\u00e4\u00e4 sit\u00e4 Google Chromessa avaamalla dev-ty\u00f6kalut, tarkastamalla kohteena olevan elementin (esim. navigaattoripalkin Home-linkki), siirtym\u00e4ll\u00e4 CSS-v\u00e4riominaisuuteen ja napsauttamalla v\u00e4risuorakulmaa avaat v\u00e4rivalitsimen, jonka alareunassa n\u00e4kyy kontrastisuhteen arvo, laajenna sit\u00e4 saadaksesi lis\u00e4tietoja. Prosessi on t\u00e4sm\u00e4lleen sama Firefoxissa, vain pieni ero suhteessa n\u00e4kyy v\u00e4rinvalitsimen vasemmassa alareunassa.<\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"\/app\/uploads\/2024\/05\/02-chrome-color-picker.png\" alt=\"musta&lt;em&gt;tausta&lt;\/em&gt; sinisell\u00e4&lt;em&gt;koodilla&lt;\/em&gt;.\" title=\"kromi picker esimerkki\"\/><\/figure>\n\n\n\n<p>Saadaksesi lis\u00e4tietoja kontrastista tarkista t\u00e4m\u00e4&nbsp;<a href=\"https:\/\/webaim.org\/articles\/contrast\/\" rel=\"nofollow\">Kontrasti ja v\u00e4rien saavutettavuus Artikkeli<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Linkin tekstin ongelma<\/h2>\n\n\n\n<p>Linkit ovat iso osa <a href=\"https:\/\/thecodest.co\/fi\/blog\/find-your-ideal-stack-for-web-development\/\">web<\/a> joten niiden saatavuuden parantaminen on eritt\u00e4in t\u00e4rke\u00e4\u00e4. Linkin on oltava j\u00e4rkev\u00e4 ja sen on kerrottava k\u00e4ytt\u00e4j\u00e4lle asiayhteydest\u00e4\u00e4n, joten ep\u00e4informatiivinen linkki, jossa on teksti kuten Lue lis\u00e4\u00e4, klikkaa t\u00e4st\u00e4, tarkista yksityiskohdat, ei ole kovin hy\u00f6dyllinen. <a href=\"https:\/\/thecodest.co\/fi\/dictionary\/how-to-make-product\/\">tuote<\/a> yksityiskohdat, esimerkiksi tuotteen nimen, kuten \"Mandalorian kyp\u00e4r\u00e4\", k\u00e4ytt\u00e4minen on parempi ja informatiivisempi. Sellaiset sanat kuin <code>klikkaa t\u00e4st\u00e4<\/code> tai <code>enemm\u00e4n<\/code> voidaan j\u00e4tt\u00e4\u00e4 pois, koska linkki on oletusarvoisesti napsautettavissa, ja esimerkiksi \"lis\u00e4\u00e4 t\u00e4m\u00e4n p\u00e4iv\u00e4n uutisista\" voidaan lyhent\u00e4\u00e4 muotoon \"t\u00e4m\u00e4n p\u00e4iv\u00e4n uutiset\". Linkin pituudelle ei ole mit\u00e4\u00e4n erityist\u00e4 s\u00e4\u00e4nt\u00f6\u00e4 tai rajoitusta, vaan <b>linkin on oltava luettavissa<\/b> ja riitt\u00e4v\u00e4n pitk\u00e4, jotta sen tarkoitus voidaan kuvata hyvin.<\/p>\n\n\n\n<p>Kuvat linkkein\u00e4 ovat laajalti k\u00e4ytetty malli, joten t\u00e4ss\u00e4 on noudatettava samoja s\u00e4\u00e4nt\u00f6j\u00e4, joista puhuimme edell\u00e4. Kuvan alt-attribuutti toimii linkkitekstin roolissa, ja ruudunlukijat ilmoittavat sen. Kuvien k\u00e4sittelemisess\u00e4 linkkein\u00e4 on useita tapauskohtaisia skenaarioita, jos kuva on linkin ainoa sis\u00e4lt\u00f6, sill\u00e4 on oltava alt-attribuutti, jos linkiss\u00e4 on teksti\u00e4 ja kuvaa, alt-attribuutti voidaan j\u00e4tt\u00e4\u00e4 pois, t\u00e4ss\u00e4 on muutamia esimerkkej\u00e4:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code class=\"\">\r&lt;a href=&quot;\/notifications&quot;&gt;\r\n  &lt;img src=&quot;\/img\/notification.png&quot; alt=&quot;Ilmoitukset&quot;&gt;\r\n&lt;\/a&gt;<\/code><\/pre>\n\n\n\n<p>Tutustu linkkeihin t\u00e4\u00e4ll\u00e4 ja lue linkkien saavutettavuudesta:<a href=\"https:\/\/webaim.org\/techniques\/hypertext\/link_text\" rel=\"nofollow\">Linkkiteksti ja ulkon\u00e4k\u00f6<\/a>, <a href=\"https:\/\/www.w3.org\/WAI\/tutorials\/images\/functional\/\" rel=\"nofollow\">Toiminnalliset kuvat<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Lomakkeen sy\u00f6tteest\u00e4 puuttuu etiketti<\/h2>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"\/app\/uploads\/2024\/05\/03-form-inputs.png\" alt=\"input&lt;em&gt;labels&lt;\/em&gt;with&lt;em&gt;blue&lt;\/em&gt;button\" title=\"esimerkki sy\u00f6tt\u00f6merkinn\u00f6ist\u00e4 \"\/><\/figure>\n\n\n\n<p>Olemme kaikki ennenkin n\u00e4hneet lomakkeen sy\u00f6tteit\u00e4, joissa ei ole merkint\u00e4\u00e4 ja joissa on vain paikanvaraaja, joka kuvaa sy\u00f6tteen tarkoitusta. Ensimm\u00e4inen huomio on, ett\u00e4 heti kun k\u00e4ytt\u00e4j\u00e4 t\u00e4ytt\u00e4\u00e4 kaikki sy\u00f6tteet ja paikanpit\u00e4j\u00e4t eiv\u00e4t ole en\u00e4\u00e4 n\u00e4kyviss\u00e4, meill\u00e4 ei ole visuaalista kontekstia sy\u00f6tteen tarkoituksesta, mutta anna k\u00e4ytt\u00e4j\u00e4n t\u00e4ytt\u00e4\u00e4 kaikki sy\u00f6tteet. <a href=\"https:\/\/thecodest.co\/fi\/blog\/why-us-companies-are-opting-for-polish-developers\/\">us<\/a> keskity t\u00e4ss\u00e4 yhteydess\u00e4 saavutettavuuteen. <\/p>\n\n\n\n<p>Yhdist\u00e4minen&nbsp;<code>etiketti<\/code>&nbsp;sy\u00f6tt\u00f6\u00f6n antaa meille kaksi merkitt\u00e4v\u00e4\u00e4 etua: ruudunlukija lukee etiketin, kun k\u00e4ytt\u00e4j\u00e4 keskittyy lomakkeen sy\u00f6tt\u00f6\u00f6n, ja kun etiketti\u00e4 napsautetaan tai sit\u00e4 kosketetaan\/taputetaan, selain siirt\u00e4\u00e4 fokuksen siihen liittyv\u00e4\u00e4n sy\u00f6tt\u00f6\u00f6n. Helppo ratkaisu t\u00e4llaiseen tilanteeseen on vain lis\u00e4t\u00e4 tarrat seuraavasti:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"javascript\" class=\"language-javascript\">    Etunimi\n\n    \n  \n\n    Sukunimi\n\n    \n  \n\n    S\u00e4hk\u00f6postiosoite\n\n    \n  \n\n    L\u00e4het\u00e4\n  \n\n```<\/code><\/pre>\n\n\n\n<p>Siin\u00e4 kaikki, kaikilla sy\u00f6tteill\u00e4 on niihin liittyv\u00e4t merkinn\u00e4t, joten ne ovat kaikkien k\u00e4ytett\u00e4viss\u00e4. Voimme jopa poistaa paikannussalpaajat, jotta v\u00e4lt\u00e4mme sy\u00f6tt\u00f6tarkoituksen p\u00e4\u00e4llekk\u00e4isyyden, mutta tied\u00e4mme kaikki, ett\u00e4 todelliset tilanteet eiv\u00e4t ole niin helppoja, kun olet juuri saanut mallin, jossa lomakkeen sy\u00f6tt\u00f6tiedot ovat ilman merkint\u00f6j\u00e4, eik\u00e4 asiakas halua muuttaa t\u00e4t\u00e4 osaa. Ensimm\u00e4inen mieleen tuleva ratkaisu on soveltaa&nbsp;<code>display: none;<\/code>&nbsp;tai&nbsp;<code>n\u00e4kyvyys: piilotettu;<\/code>&nbsp;tarroihimme, t\u00e4m\u00e4 piilottaa ne, mutta ne ovat silti siell\u00e4, eik\u00f6 niin? N\u00e4m\u00e4 ominaisuudet piilottavat elementtej\u00e4 paitsi n\u00e4yt\u00f6ll\u00e4 my\u00f6s ruudunlukijan k\u00e4ytt\u00e4jille, joten t\u00e4m\u00e4 ei ratkaise ongelmaamme.<\/p>\n\n\n\n<p>Voimme k\u00e4ytt\u00e4\u00e4&nbsp;<strong>leikekuvio<\/strong>&nbsp;ratkaisemaan t\u00e4m\u00e4n. T\u00e4ll\u00e4 tavoin piilotamme sis\u00e4ll\u00f6n visuaalisesti, mutta tarjoamme sen silti ruudunlukijoille. Luomme seuraavan CSS:n&nbsp;<code>Vain sr-verkkosivusto<\/code>&nbsp;luokkaa ja soveltaa sit\u00e4 kaikkiin tarroihimme:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"javascript\" class=\"language-javascript\"><code> .sr-only:not(:focus):not(:active) {\n   clip: rect(0 0 0 0 0);\n   clip-path: inset(50%);\n   height: 1px;\n   overflow: hidden;\n   position: absolute;\n   white-space: nowrap;\n   width: 1px;\n }\n<\/code><\/code><\/pre>\n\n\n\n<p>T\u00e4m\u00e4 piilottaa merkinn\u00e4t, tekee niist\u00e4 ruudunlukijoiden k\u00e4ytett\u00e4viss\u00e4 olevia ja sopii ulkoasuun. Osoite&nbsp;<code>:not(:focus):not(:active)<\/code>&nbsp;pseudo-luokka est\u00e4\u00e4 fokusoitavat elementit, kuten esimerkiksi&nbsp;<code>a<\/code>,&nbsp;<code>painike<\/code>,&nbsp;<code>sy\u00f6tt\u00f6<\/code>&nbsp;piiloutumasta, kun se vastaanottaa tarkennuksen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Ei tarkennusilmaisinta<\/h2>\n\n\n\n<p>Aikoinaan tein t\u00e4m\u00e4n globaalissa CSS-tyylitaulussa:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"javascript\" class=\"language-javascript\">* {\noutline: none; \/* kauhea virhe *\/\n}<\/code><\/pre>\n\n\n\n<p>Noin 2020 Huomasin mustat rajat n\u00e4kyv\u00e4t Google Chrome -lomakkeen sy\u00f6tteiss\u00e4, kun ne on tarkennettu tai painikkeissa, kun ne on siirretty - se oli todella outoa, koska en ymm\u00e4rt\u00e4nyt sit\u00e4 tuolloin, jonkin verran tutkimuksen j\u00e4lkeen olen selvitt\u00e4nyt, ett\u00e4 se johtuu \u00e4\u00e4riviivojen CSS-ominaisuudesta, joten poistaminen ratkaisi tuon \"ongelman\" minulle.<\/p>\n\n\n\n<p>Tuolloin minulla ei ollut aavistustakaan siit\u00e4, mik\u00e4 oli oikea tapa tehd\u00e4 se.  Tutkittuani hieman t\u00e4m\u00e4n uuden oletusarvon syit\u00e4 ja tapoja sain selville, ett\u00e4 \u00e4\u00e4riviivat ovat elementin tarkennuksen osoitin, ja jos ne poistetaan, on annettava ilmeinen tarkennuksen muotoilu, joten periaatteessa sit\u00e4, mit\u00e4 tein, pidet\u00e4\u00e4n huonona k\u00e4yt\u00e4nt\u00f6n\u00e4. Voit muokata tarkennusindikaattoreita parhaaksi katsomallasi tavalla, mutta niiden poistaminen kokonaan verkkosivustolta on suuri esteett\u00f6myysongelma. Elementin tarkennuksen muotoilun mukauttaminen on esimerkiksi melko helppoa:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"javascript\" class=\"language-javascript\"><code> a:focus {\n   outline: 4px solid #ee7834;\n   outline-offset: 4px;\n }<\/code><\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Esteett\u00f6myysty\u00f6kalut<\/h2>\n\n\n\n<p>Kaikkien k\u00e4sittelemiemme asioiden tarkistaminen voi olla paljon ty\u00f6t\u00e4, varsinkin kun tied\u00e4mme, ett\u00e4 esteett\u00f6myydest\u00e4 on paljon muutakin kerrottavaa, joten esteett\u00f6myyden k\u00e4sittelemiseksi meill\u00e4 on kaksi loistavaa selainlaajennusta.<\/p>\n\n\n\n<p><a href=\"https:\/\/wave.webaim.org\/\" rel=\"nofollow\">WAVE-arviointity\u00f6kalu<\/a> on arviointity\u00f6kalupaketti, joka auttaa meit\u00e4 tekem\u00e4\u00e4n verkkosis\u00e4ll\u00f6st\u00e4mme helpommin saavutettavaa. Se on k\u00e4ytett\u00e4viss\u00e4 sek\u00e4 Google Chromessa ett\u00e4 Firefoxissa. <\/p>\n\n\n\n<p>Kokeillaan sit\u00e4 pienell\u00e4 verkkosivulla, joka sis\u00e4lt\u00e4\u00e4 navigaattoripalkin ja sy\u00f6tteen, jolta puuttuu etiketti, ja katsotaan, mit\u00e4 se palauttaa, laajennuksen asentamisen j\u00e4lkeen meid\u00e4n tarvitsee vain napsauttaa laajennuksen kuvaketta k\u00e4ytt\u00e4\u00e4ksemme sit\u00e4.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"\/app\/uploads\/2024\/05\/04-wave-errors.png\" alt=\"valkoinen&lt;em&gt;ikkuna&lt;\/em&gt;, jossa&lt;em&gt;harmaat&lt;\/em&gt;osat\" title=\"aaltovirhe esimerkki \"\/><\/figure>\n\n\n\n<p>Yhteenveto-v\u00e4lilehdell\u00e4 n\u00e4kyy 1 virhe (lomakkeen elementist\u00e4 puuttuu merkint\u00e4), 2 kontrastivirhett\u00e4 ja 1 h\u00e4lytys (puuttuva otsikkorakenne), kuten n\u00e4et, tulos on hyvin selke\u00e4 ja yksityiskohtainen. Yksityiskohdat-v\u00e4lilehti n\u00e4ytt\u00e4\u00e4 luettelon kaikista virheist\u00e4, h\u00e4lytyksist\u00e4 ja ominaisuuksista. Voimme my\u00f6s olla vuorovaikutuksessa suoraan sivulla klikkaamalla noita punaisia suorakulmioita tarkistaaksemme virheen kuvauksen ja tyypin.<\/p>\n\n\n\n<p><a href=\"https:\/\/www.deque.com\/axe\/devtools\/\" rel=\"nofollow\">Axe DevTools<\/a> on tehokas ja tarkka saavutettavuuden ty\u00f6kalupakki. Se on k\u00e4ytett\u00e4viss\u00e4 sek\u00e4 Google Chromessa ett\u00e4 Firefoxissa. Laajennuksen asentamisen j\u00e4lkeen meid\u00e4n on avattava selaimen dev-ty\u00f6kalut ja ment\u00e4v\u00e4 axe DevTools -v\u00e4lilehdelle ja napsautettava Scan all of my pages.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"\/app\/uploads\/2024\/05\/05-axe-errors.png\" alt=\"DevTools&lt;em&gt;ikkuna&lt;\/em&gt; mustilla&lt;\/em&gt;harmailla&lt;\/em&gt;osilla&lt;\/em&gt;toiminnoilla\" title=\"kirveen virheet esimerkki \"\/><\/figure>\n\n\n\n<p>N\u00e4et, ett\u00e4 Axe DevTools on raportoinut samoista ongelmista WAVE Evaluation Toolin kanssa, jotka ovat kontrastiongelmia, lomakkeen elementist\u00e4 puuttuu etiketti ja otsikkoelementti puuttuu, ja se jopa antoi meille joitakin parhaita k\u00e4yt\u00e4nt\u00f6j\u00e4 noudatettavaksi.<\/p>\n\n\n\n<p>Toinen tapa testata esteett\u00f6myytt\u00e4 on k\u00e4ytt\u00e4\u00e4 ruudunlukijaa ja testata verkkosivustoasi sen avulla; saatavilla on monia ruudunlukuohjelmia, vain muutamia mainitakseni:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.nvaccess.org\/\" rel=\"nofollow\">NVDA<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/support.apple.com\/guide\/voiceover\/welcome\/mac\" rel=\"nofollow\">VoiceOver<\/a> on saatavilla macOs-laitteissa.<\/li>\n\n\n\n<li><a href=\"https:\/\/help.gnome.org\/users\/orca\/stable\/introduction.html.en\" rel=\"nofollow\">Orca<\/a> on ilmainen ja avoimen l\u00e4hdekoodin n\u00e4yt\u00f6nlukija linuxille.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Yhteenveto<\/h2>\n\n\n\n<p>Olemme n\u00e4hneet t\u00e4ss\u00e4 artikkelissa joitakin yleisi\u00e4 esteett\u00f6myysongelmia, tapoja niiden ratkaisemiseksi ja joitakin hyvi\u00e4 ty\u00f6kaluja esteett\u00f6myyden testaamiseen. Viel\u00e4 on paljon muuta k\u00e4sitelt\u00e4v\u00e4\u00e4 sellaisten elementtien kuin dialogien, akordionien ja karusellien saavutettavuudesta, mutta kuten olet n\u00e4hnyt t\u00e4ss\u00e4 artikkelissa, on olemassa runsaasti dokumentaatiota ja ty\u00f6kaluja, jotka auttavat sinua k\u00e4sittelem\u00e4\u00e4n saavutettavuutta.<\/p>\n\n\n\n<p>Joitakin keskeisi\u00e4 seikkoja, jotka on hyv\u00e4 muistaa:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Tarkista aina kontrastisuhde.<\/li>\n\n\n\n<li>Tarjoa aina informatiivista sis\u00e4lt\u00f6\u00e4 linkkeihin.<\/li>\n\n\n\n<li>Lomake-elementill\u00e4 on oltava siihen liittyv\u00e4 etiketti.<\/li>\n\n\n\n<li>On tarjottava ilmeinen tarkennusmuotoilu.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/thecodest.co\/careers\"><img decoding=\"async\" src=\"\/app\/uploads\/2024\/05\/become_a_part_of_the_codest.png\" alt=\"ura codest:ss\u00e4\"\/><\/a><\/figure>","protected":false},"excerpt":{"rendered":"<p>Miljoonat eri ihmiset k\u00e4ytt\u00e4v\u00e4t verkkoa p\u00e4ivitt\u00e4in, ja yksi t\u00e4rkeimmist\u00e4 tavoitteistamme kehitt\u00e4jin\u00e4 on tehd\u00e4 verkosta kaikkien ulottuvilla oleva. T\u00e4ss\u00e4 artikkelissa esitell\u00e4\u00e4n joitakin yleisi\u00e4 esteett\u00f6myysongelmia ja tapoja ratkaista ne.<\/p>","protected":false},"author":2,"featured_media":3143,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[8],"tags":[],"class_list":["post-3142","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-software-development"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.3 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>4 Common Web Accessibility Issues to Know - The Codest<\/title>\n<meta name=\"description\" content=\"A guide to common web accessibility issues developers should know, with practical tips to improve usability for users with disabilities.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/thecodest.co\/fi\/blogi\/kontrastisuhteen-ongelma\/\" \/>\n<meta property=\"og:locale\" content=\"fi_FI\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"4 Common Web Accessibility Issues to Know\" \/>\n<meta property=\"og:description\" content=\"A guide to common web accessibility issues developers should know, with practical tips to improve usability for users with disabilities.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/thecodest.co\/fi\/blogi\/kontrastisuhteen-ongelma\/\" \/>\n<meta property=\"og:site_name\" content=\"The Codest\" \/>\n<meta property=\"article:published_time\" content=\"2022-11-15T10:09:22+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-03-09T13:10:53+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/thecodest.co\/app\/uploads\/2024\/05\/common_web_accessibility_issues1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"960\" \/>\n\t<meta property=\"og:image:height\" content=\"540\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"thecodest\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"thecodest\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/contrast-ratio-issue\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/contrast-ratio-issue\\\/\"},\"author\":{\"name\":\"thecodest\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/#\\\/schema\\\/person\\\/7e3fe41dfa4f4e41a7baad4c6e0d4f76\"},\"headline\":\"4 Common Web Accessibility Issues to Know\",\"datePublished\":\"2022-11-15T10:09:22+00:00\",\"dateModified\":\"2026-03-09T13:10:53+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/contrast-ratio-issue\\\/\"},\"wordCount\":1409,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/contrast-ratio-issue\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/thecodest.co\\\/app\\\/uploads\\\/2024\\\/05\\\/common_web_accessibility_issues1.png\",\"articleSection\":[\"Software Development\"],\"inLanguage\":\"fi\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/thecodest.co\\\/blog\\\/contrast-ratio-issue\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/contrast-ratio-issue\\\/\",\"url\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/contrast-ratio-issue\\\/\",\"name\":\"4 Common Web Accessibility Issues to Know - The Codest\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/contrast-ratio-issue\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/contrast-ratio-issue\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/thecodest.co\\\/app\\\/uploads\\\/2024\\\/05\\\/common_web_accessibility_issues1.png\",\"datePublished\":\"2022-11-15T10:09:22+00:00\",\"dateModified\":\"2026-03-09T13:10:53+00:00\",\"description\":\"A guide to common web accessibility issues developers should know, with practical tips to improve usability for users with disabilities.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/contrast-ratio-issue\\\/#breadcrumb\"},\"inLanguage\":\"fi\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/thecodest.co\\\/blog\\\/contrast-ratio-issue\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"fi\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/contrast-ratio-issue\\\/#primaryimage\",\"url\":\"https:\\\/\\\/thecodest.co\\\/app\\\/uploads\\\/2024\\\/05\\\/common_web_accessibility_issues1.png\",\"contentUrl\":\"https:\\\/\\\/thecodest.co\\\/app\\\/uploads\\\/2024\\\/05\\\/common_web_accessibility_issues1.png\",\"width\":960,\"height\":540},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/blog\\\/contrast-ratio-issue\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/thecodest.co\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"4 Common Web Accessibility Issues to Know\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/#website\",\"url\":\"https:\\\/\\\/thecodest.co\\\/\",\"name\":\"The Codest\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/thecodest.co\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fi\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/#organization\",\"name\":\"The Codest\",\"url\":\"https:\\\/\\\/thecodest.co\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fi\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/thecodest.co\\\/app\\\/uploads\\\/2024\\\/03\\\/thecodest-logo.svg\",\"contentUrl\":\"https:\\\/\\\/thecodest.co\\\/app\\\/uploads\\\/2024\\\/03\\\/thecodest-logo.svg\",\"width\":144,\"height\":36,\"caption\":\"The Codest\"},\"image\":{\"@id\":\"https:\\\/\\\/thecodest.co\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/pl.linkedin.com\\\/company\\\/codest\",\"https:\\\/\\\/clutch.co\\\/profile\\\/codest\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/thecodest.co\\\/#\\\/schema\\\/person\\\/7e3fe41dfa4f4e41a7baad4c6e0d4f76\",\"name\":\"thecodest\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fi\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5dbfe6a1e8c86e432e8812759e34e6fe82ebac75119ae3237a6c1311fa19caf4?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5dbfe6a1e8c86e432e8812759e34e6fe82ebac75119ae3237a6c1311fa19caf4?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5dbfe6a1e8c86e432e8812759e34e6fe82ebac75119ae3237a6c1311fa19caf4?s=96&d=mm&r=g\",\"caption\":\"thecodest\"},\"url\":\"https:\\\/\\\/thecodest.co\\\/fi\\\/author\\\/thecodest\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"4 yleist\u00e4 verkkopalvelujen saavutettavuuteen liittyv\u00e4\u00e4 kysymyst\u00e4 - The Codest","description":"Opas yleisimpiin esteett\u00f6myysongelmiin, jotka kehitt\u00e4jien on hyv\u00e4 tiet\u00e4\u00e4, sek\u00e4 k\u00e4yt\u00e4nn\u00f6n vinkkej\u00e4 k\u00e4ytett\u00e4vyyden parantamiseksi vammaisille k\u00e4ytt\u00e4jille.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/thecodest.co\/fi\/blogi\/kontrastisuhteen-ongelma\/","og_locale":"fi_FI","og_type":"article","og_title":"4 Common Web Accessibility Issues to Know","og_description":"A guide to common web accessibility issues developers should know, with practical tips to improve usability for users with disabilities.","og_url":"https:\/\/thecodest.co\/fi\/blogi\/kontrastisuhteen-ongelma\/","og_site_name":"The Codest","article_published_time":"2022-11-15T10:09:22+00:00","article_modified_time":"2026-03-09T13:10:53+00:00","og_image":[{"width":960,"height":540,"url":"https:\/\/thecodest.co\/app\/uploads\/2024\/05\/common_web_accessibility_issues1.png","type":"image\/png"}],"author":"thecodest","twitter_card":"summary_large_image","twitter_misc":{"Written by":"thecodest","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/thecodest.co\/blog\/contrast-ratio-issue\/#article","isPartOf":{"@id":"https:\/\/thecodest.co\/blog\/contrast-ratio-issue\/"},"author":{"name":"thecodest","@id":"https:\/\/thecodest.co\/#\/schema\/person\/7e3fe41dfa4f4e41a7baad4c6e0d4f76"},"headline":"4 Common Web Accessibility Issues to Know","datePublished":"2022-11-15T10:09:22+00:00","dateModified":"2026-03-09T13:10:53+00:00","mainEntityOfPage":{"@id":"https:\/\/thecodest.co\/blog\/contrast-ratio-issue\/"},"wordCount":1409,"commentCount":0,"publisher":{"@id":"https:\/\/thecodest.co\/#organization"},"image":{"@id":"https:\/\/thecodest.co\/blog\/contrast-ratio-issue\/#primaryimage"},"thumbnailUrl":"https:\/\/thecodest.co\/app\/uploads\/2024\/05\/common_web_accessibility_issues1.png","articleSection":["Software Development"],"inLanguage":"fi","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/thecodest.co\/blog\/contrast-ratio-issue\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/thecodest.co\/blog\/contrast-ratio-issue\/","url":"https:\/\/thecodest.co\/blog\/contrast-ratio-issue\/","name":"4 yleist\u00e4 verkkopalvelujen saavutettavuuteen liittyv\u00e4\u00e4 kysymyst\u00e4 - The Codest","isPartOf":{"@id":"https:\/\/thecodest.co\/#website"},"primaryImageOfPage":{"@id":"https:\/\/thecodest.co\/blog\/contrast-ratio-issue\/#primaryimage"},"image":{"@id":"https:\/\/thecodest.co\/blog\/contrast-ratio-issue\/#primaryimage"},"thumbnailUrl":"https:\/\/thecodest.co\/app\/uploads\/2024\/05\/common_web_accessibility_issues1.png","datePublished":"2022-11-15T10:09:22+00:00","dateModified":"2026-03-09T13:10:53+00:00","description":"Opas yleisimpiin esteett\u00f6myysongelmiin, jotka kehitt\u00e4jien on hyv\u00e4 tiet\u00e4\u00e4, sek\u00e4 k\u00e4yt\u00e4nn\u00f6n vinkkej\u00e4 k\u00e4ytett\u00e4vyyden parantamiseksi vammaisille k\u00e4ytt\u00e4jille.","breadcrumb":{"@id":"https:\/\/thecodest.co\/blog\/contrast-ratio-issue\/#breadcrumb"},"inLanguage":"fi","potentialAction":[{"@type":"ReadAction","target":["https:\/\/thecodest.co\/blog\/contrast-ratio-issue\/"]}]},{"@type":"ImageObject","inLanguage":"fi","@id":"https:\/\/thecodest.co\/blog\/contrast-ratio-issue\/#primaryimage","url":"https:\/\/thecodest.co\/app\/uploads\/2024\/05\/common_web_accessibility_issues1.png","contentUrl":"https:\/\/thecodest.co\/app\/uploads\/2024\/05\/common_web_accessibility_issues1.png","width":960,"height":540},{"@type":"BreadcrumbList","@id":"https:\/\/thecodest.co\/blog\/contrast-ratio-issue\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/thecodest.co\/"},{"@type":"ListItem","position":2,"name":"4 Common Web Accessibility Issues to Know"}]},{"@type":"WebSite","@id":"https:\/\/thecodest.co\/#website","url":"https:\/\/thecodest.co\/","name":"Codest","description":"","publisher":{"@id":"https:\/\/thecodest.co\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/thecodest.co\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fi"},{"@type":"Organization","@id":"https:\/\/thecodest.co\/#organization","name":"Codest","url":"https:\/\/thecodest.co\/","logo":{"@type":"ImageObject","inLanguage":"fi","@id":"https:\/\/thecodest.co\/#\/schema\/logo\/image\/","url":"https:\/\/thecodest.co\/app\/uploads\/2024\/03\/thecodest-logo.svg","contentUrl":"https:\/\/thecodest.co\/app\/uploads\/2024\/03\/thecodest-logo.svg","width":144,"height":36,"caption":"The Codest"},"image":{"@id":"https:\/\/thecodest.co\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/pl.linkedin.com\/company\/codest","https:\/\/clutch.co\/profile\/codest"]},{"@type":"Person","@id":"https:\/\/thecodest.co\/#\/schema\/person\/7e3fe41dfa4f4e41a7baad4c6e0d4f76","name":"thecodest","image":{"@type":"ImageObject","inLanguage":"fi","@id":"https:\/\/secure.gravatar.com\/avatar\/5dbfe6a1e8c86e432e8812759e34e6fe82ebac75119ae3237a6c1311fa19caf4?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/5dbfe6a1e8c86e432e8812759e34e6fe82ebac75119ae3237a6c1311fa19caf4?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5dbfe6a1e8c86e432e8812759e34e6fe82ebac75119ae3237a6c1311fa19caf4?s=96&d=mm&r=g","caption":"thecodest"},"url":"https:\/\/thecodest.co\/fi\/author\/thecodest\/"}]}},"_links":{"self":[{"href":"https:\/\/thecodest.co\/fi\/wp-json\/wp\/v2\/posts\/3142","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/thecodest.co\/fi\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/thecodest.co\/fi\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/thecodest.co\/fi\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/thecodest.co\/fi\/wp-json\/wp\/v2\/comments?post=3142"}],"version-history":[{"count":11,"href":"https:\/\/thecodest.co\/fi\/wp-json\/wp\/v2\/posts\/3142\/revisions"}],"predecessor-version":[{"id":8518,"href":"https:\/\/thecodest.co\/fi\/wp-json\/wp\/v2\/posts\/3142\/revisions\/8518"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/thecodest.co\/fi\/wp-json\/wp\/v2\/media\/3143"}],"wp:attachment":[{"href":"https:\/\/thecodest.co\/fi\/wp-json\/wp\/v2\/media?parent=3142"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/thecodest.co\/fi\/wp-json\/wp\/v2\/categories?post=3142"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/thecodest.co\/fi\/wp-json\/wp\/v2\/tags?post=3142"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}