Web tasarımı

Web erişilebilirliği nedir

Web erişilebilirliği; klavyeyle, ekran okuyucuyla ve renkleri farklı gören bir gözle de kullanılabilen bir sayfa kurmak demektir. Çoğu zor değildir: doğru HTML, yeterli kontrast, görülebilen bir odak durumu ve alternatif metin taşıyan görseller.

  • Ders 10 / 12
  • Orta
  • Ücretsiz, kayıt yok

Erişilebilirlik gözden geçirme sayfası: gerçekte denetlenen şey

Teslim öncesi gözden geçirme sayfasıWCAG AA

Çalışan bir sayfa

  • Tıklanabilir her şeye Tab ile ulaşılıyor
  • Odak halkası her adımda görünüyor
  • Sıradan metin kontrastı en az 4,5:1
  • Her görselin alternatif metni ya da boş alt'ı var
  • Düğmeler button, etiketler label etiketiyle yazılmış
  • Metin içi bağlantılar renkten başka bir işaret taşıyor

Genelde kırıldığı yerler

  • Sıfırlama dosyasındaki outline: none
  • onclick ile düğmeye çevrilmiş div
  • Etiket yerine geçen ipucu metni
  • Koyu katmanı olmayan, görsel üstündeki metin
  • Escape ile kapanmayan bir kutu
  • Adı olmayan, yalnızca simgeden ibaret düğme

Bu sayfa mekanik hataları yakalar. Gerçek bir kişinin işini bitirip bitiremediğini ancak insanlarla yapılan sınama çözer.

Son kontrol: Bu dersteki bilgiler ve araç adları bu tarihte kaynaklarıyla yeniden doğrulanır.

Erişilebilirlik ne demek ve kimin için?

Web erişilebilirliği, kurduğunuz sayfanın; fareyle çalışmayan, renkleri farklı gören ya da sayfayı hiç görmeyen biri için de kullanılabilir kalması demektir. Daha basit değil, daha soluk değil; yalnızca kullanılabilir.

Bundan yararlananların listesi çoğu ekibin sandığından uzundur. Ekran okuyucu kullanan biri. Eli titrediği için fareyi tam yerine götüremeyen biri. Renk körlüğü olan ve kırmızıyla yeşili tek renk gören biri. Videonuzu otobüste sessiz izleyen biri. Bir de kendini bu listeye hiç koymayan grup: öğle güneşinde ekrana bakan siz, ya da bir eliniz doluyken diğerinin başparmağıyla çalışan siz.

Standardı WCAG'dir; web konsorsiyumunun A, AA ve AAA olmak üzere üç düzeyde yayımladığı, sınanabilir ölçütler bütünü. Pratik hedef neredeyse her zaman AA'dır; bazı ölçütler için AAA sıradan bir sitede ulaşılabilir değildir ve kimse bunu sizden istemiyor.

Açık bir şey daha söyleyelim: İran pazarında müşteri bunu genelde istemez, rakip de yapmaz; Farsça sitelerin çoğu bir kez olsun klavyeyle denenmemiştir. Bu da şu demek: yapmak hâlâ bir fark, bir taban değil. Ve aşağıdakilerin çoğu bir öğleden sonra sürer, bir proje değil.

Renk kontrastı: hangi sayı yeterli?

Kontrast, metnin parlaklığının arka planınkine oranıdır ve tek bir sayıyla anlatılır: görünmez demek olan 1:1'den, siyah üstüne beyaz demek olan 21:1'e kadar. WCAG sıradan metin için en az 4,5:1, büyük metin için 3:1 ve bir girdi alanının kenarı ya da anlam taşıyan bir simge gibi arayüz parçaları için 3:1 ister.

Bu bölümün en önemli şeyi tek cümle: bir rengin tek başına kontrastı yoktur, renk çiftinin vardır. Koyu bir arka planda temiz okunan mavi, bir düğmenin arka planı olup üstüne beyaz metin geldiğinde kalabilir.

Okuduğunuz sitenin sayıları iyi bir örnek. Bunları 5 Eylül 2026'da gerçek palet değerlerinden hesapladık: gövde metni arka plan üstünde 17,6:1, ikincil metin 9,25:1, metin rengi olarak mavi 7,32:1 ve daha soluk metin 6,21:1. Şimdi aynı mavi arka plan olarak: üstündeki beyaz yalnızca 2,72:1, yani kalıyor. Bu yüzden paletimizde tek mavi değil iki mavi var; ikincisi daha koyu, üstündeki beyaz 5,17:1'e çıkıyor ve ilki metin ile simgeler için olduğu gibi kalıyor.

Denetlemesi on saniye. Tarayıcının geliştirici araçlarında metne tıklayın, renk değerini açın; kontrast oranı renk seçicinin hemen yanında yazar.

Kontrast hatalarının çoğu iki yerden çıkar ve ikisi de gövde metni değildir: görsel üstündeki metin, ki fotoğrafın parlaklığı her noktada farklı olduğu için tek bir sayısı yoktur ve çözümü metnin altına koyu bir katmandır; bir de form alanının içindeki ipucu metni, ki sayfanın çoğunlukla en soluk metnidir ve tasarımların çoğunda kalır.

Tek renk, iki rol, tamamen farklı iki sayı

Bu sitenin paletinin kontrast oranları, 5 Eylül 2026'da hesaplandı; sıradan metin için taban 4,5:1
  1. Arka plan üstünde gövde metni 17,6:1 Sayfanın çoğunun yazıldığı renk
  2. İkincil metin 9,25:1 Açıklamalar ve öğelerin yanındaki metinler
  3. Metin rengi olarak mavi 7,32:1 Bu sayfadaki bağlantıların taşıdığı mavi
  4. Daha soluk metin 6,21:1 Sitede izin verilen en soluk metin
  5. Düğme mavisi üstünde beyaz 5,17:1 Yalnızca arka plan olsun diye tanımlanmış daha koyu mavi
  6. Metin mavisi üstünde beyaz 2,72:1 Kalıyor; metin olarak geçen aynı mavi

Bu sayılar yalnızca bu palet için anlamlıdır. Her renk çifti kendi başına hesaplanmalıdır; bunları başka bir siteye kopyalamak hiçbir şeyi kanıtlamaz.

Klavyeyle beş dakika: yapabileceğiniz en hızlı sınama

Fareyi bırakın ve Tab'a basın. Bu sınama hiçbir araç istemez ve gerçek sorunların çoğunu bulur, çünkü klavyeyle çalışmayan şey ekran okuyucuyla da çalışmaz.

Dört şeye bakın:

  • Fareyle tıkladığınız her şeye Tab ile ulaşabiliyor musunuz? Açılır menü, pencere kapatma, sekmeler, filtreler.
  • Her an nerede olduğunuzu biliyor musunuz? Odak halkasını göremiyorsanız sınama daha burada kalmıştır.
  • Hareketin sırası sayfanın sırasıyla aynı mı? Tab başlıktan altbilgiye atlayıp sonra ortaya dönüyorsa, öğeler HTML'de göründükleri yerden farklı bir sırada duruyordur.
  • Bir yerde takılıyor musunuz? Klasik hâli, açılan ama Escape ile kapanmayan ve Tab'ın içinden çıkmadığı bir kutudur.

Bu sınamanın bulduğu en sık hata tek satır CSS'tir: tarayıcının varsayılan halkası çirkin diye sıfırlama dosyalarına yazılan outline: none. Onu kaldırmak, klavyeyle çalışan birinin artık nerede olduğunu bilmemesi demektir. Doğrusu silmek değil değiştirmektir. Bu sitede tek bir genel kural var: iki piksellik mavi halka ve öğeden üç piksel boşlukla :focus-visible. focus-visible kelimesi önemlidir, çünkü fare kullanıcısı tıklamayla halka almaz, klavye kullanıcısı alır.

Bir de neredeyse hiçbir Farsça sitede olmayan ve üç satır süren bir öğe var: içeriğe atla bağlantısı. Tab'ın ulaştığı ilk şeydir, odak almadan görünmez ve klavyeyle gelen birini bütün menüyü geçmekten kurtarır. Bu temada body içindeki ilk öğe odur.

Klavye sınaması: dört adım, araç yok

Fareyi bırakın ve sayfanın en üstünden başlayın.

  1. Tab'a basın ve nerede olduğunuza bakın

    Odak halkasını göremiyorsanız daha burada bir hata buldunuz.

    1
  2. Sayfanın sonuna gidin ve Shift ile Tab kullanarak geri dönün

    Gidiş ve dönüş sırası, gördüğünüz sırayla aynı olmalı.

    2
  3. Her şeyi Enter ve Space ile deneyin

    Fareyle çalışıp bu iki tuşla çalışmayan şey gerçek bir düğme değildir.

    3
  4. Kutuyu ve menüyü açın, çıkabiliyor musunuz bakın

    Escape kapatmalı ve odak geldiği yere dönmeli.

    4

Bu sınama size sayfanın klavyeyle kullanılabilir olup olmadığını söyler. Ekran okuyucuda nasıl duyulduğunu söylemez; onu yalnızca ekran okuyucu söyler.

Bir görselin alternatif metnini nasıl yazarız?

Alternatif metin görselin nasıl göründüğünü değil, o sayfada ne iş yaptığını anlatır. Aynı fotoğraf iki farklı sayfada iki farklı alternatif metin alır.

Ürün sayfasındaki bir sandalye fotoğrafı: "file sırtlı siyah ofis sandalyesi, dörtte üç açıdan". Aynı fotoğraf bel ağrısı üzerine bir yazıda: "ofis sandalyesinde doğru oturuş". Tümüyle süs olan ve anlama bir şey katmayan görsel boş alternatif metin alır, yani alt="", ki ekran okuyucu üzerinden geçsin. Boş bir alt özniteliği, eksik bir alt özniteliğiyle aynı şey değildir: eksik olduğunda bazı ekran okuyucular dosya adını okur ve IMG-20260415-WA0007.jpg kimsenin duymaya ihtiyacı olan bir şey değildir.

Yazılmayacak üç şey: başa konan "görsel" ya da "fotoğraf" kelimesi, çünkü ekran okuyucu zaten bunun bir görsel olduğunu söyler; tıkıştırılmış anahtar kelime, ki alamayacağınız bir sıralama uğruna gerçek bir insanın deneyimini bozar; ve üç satırlık paragraf, çünkü alternatif metin tek cümledir ve daha fazla açıklama gerekiyorsa yeri sayfa metnidir.

Herkesin unuttuğu iki durum: yalnızca simgeden ibaret bir düğme, arama büyüteci ya da kapatma çarpısı gibi, okunacak metni yoktur ve adının aria-label ile verilmesi gerekir; bir de grafik ya da infografik, özeti alt içine sığmaz ve sayıları sayfa metninde de bulunmalıdır.

Bu sitede soru başka bir biçim aldı. Bu sayfanın üstündeki ve bölümler arasındaki şekiller görsel değil: HTML ve CSS. Yani metinleri gerçek metindir, ekran okuyucu onu okur, seçilebilir ve çevrilebilir; raylar ve ok uçları gibi süs parçaları ise aria-hidden ile ekran okuyucudan gizlenmiştir. Bu karar önce hız için alındı, erişilebilirlik yan faydası oldu. Sayfa içi SEO dersi aynı soruya arama tarafından bakıyor.

Bir div neden asla düğme değildir?

Çünkü <button>, <div onclick>'in hiçbirine sahip olmadığı dört şeyi bedava verir: Tab ona ulaşır, Enter ve Space onu etkinleştirir, ekran okuyucu "düğme" der ve tarayıcı devre dışı ile odak durumlarını zaten bilir. Bir div'i aynı yere getirmek tabindex, bir role ve bir klavye dinleyicisi yazmak demektir; sonunda elinizde yalnızca düğmeye benzeyen bir şey olur.

Aynı mantık HTML'in geri kalanında da geçerlidir ve anlamsal HTML fikrinin tamamı budur. Form etiketini alanına <label for> ile bağlayın ki metne tıklamak odağı alanın içine taşısın ve ekran okuyucu alanın ne istediğini bilsin; alanın içindeki ipucu metni etiketin yerini tutmaz, çünkü biri yazmaya başlar başlamaz kaybolur. Başlıkları sırayla tutun, h1 sonra h2 sonra h3, çünkü ekran okuyucu kullanan biri çoğu zaman önce başlık listesini dinler ve nereye gideceğine oradan karar verir. Menüyü <nav>, gövdeyi <main> içine koyun ki aynı kişi doğrudan içeriğe atlayabilsin. Listeyi de <ul> ile yazın, çünkü ekran okuyucu o zaman "liste, altı öğe" der; bu, art arda dizilmiş div'lerin çöpe attığı gerçek bir bilgidir.

Bunu bu sitenin şekil motorunda da uyguluyoruz: karşılaştırma şeklinin sütunları peş peşe paragraflar değil gerçek bir listedir, tam da okuyucu kaç madde olduğunu duysun diye. HTML dersi bu öğeleri tek tek gösteriyor.

Bir ARIA tuzağı da buraya ait, çünkü üretilmiş çıktılarda çok sık görünür: ARIA belirtiminin kendi birinci kuralı, HTML'de o iş için bir öğe varken ARIA yazmamaktır. Bir div üstündeki role="button", <button>'dan iyi değil kötüdür.

Metin içi bağlantılar: renk neden tek başına yetmez

WCAG ölçütlerinden biri, bir bilginin tek aktarım yolunun renk olmaması gerektiğini söyler. Bu ölçütün en sık kırıldığı yer paragraf içindeki bağlantıdır: siyah üstünde mavi, başka hiçbir işaret yok. Renk körlüğü olan, güneş altında okuyan ya da renkleri birbirine yaklaştıran ucuz bir monitörü olan biri o bağlantıyı görmez. Metindir; kendisi için mavi olmayan bir maviyle.

Bariz yanıt her bağlantının altını çizmektir ve o yanıt başka bir sorun üretir: menü, düğmeler, kartlar, logo ve sayfa numaraları da bağlantıdır ve hepsinin altı çizilir. Sayfa gürültülenir; bunu gören de genelde geri dönüp alt çizgiyi tümüyle kaldırır.

Bu sitede izlediğimiz ve kaynağında okuyabileceğiniz yol dört karardan oluşuyor. Birincisi, a genel olarak text-decoration: none taşıyor ve yalnızca metin içi bağlantılar ayrı bir sınıf alıyor. İkincisi, o sınıfın alt çizgisi 1,5 piksel kalınlığında bir degrade arka plandır ve hover ile :focus-visible durumunda 2 piksele çıkar; böylece klavye kullanıcısı, fare kullanıcısının aldığı geri bildirimin aynısını alır. Üçüncüsü, o sınıf box-decoration-break: clone taşır, çünkü onsuz ikinci satıra taşan bir bağlantının yalnızca bir parçasının altı çizilir, diğeri çıplak kalır. Dördüncüsü, Windows'un zorunlu renkler kipinde gerçek alt çizgiyi geri getiren bir @media (forced-colors: active) bloğu var; çünkü o kip arka plan görsellerini atar ve bunu düşünmediyseniz degrade alt çizginiz tam da ona en çok ihtiyacı olan kişi için kaybolur.

Sınırı da söyleyelim: bu dört satır yalnızca paragraf içindeki bağlantıları düzeltir. Görsel olan bir bağlantı, yalnızca simgeden ibaret bir bağlantı ve tümüyle tıklanabilir bir kart bundan hiçbir şey kazanmaz; her birinin kendi okunabilir adı olmalıdır.

Gerçekten düzeldiğini nasıl anlarsınız?

Üç aracınız var ve sıraları önemli. Önce klavye: hiçbir şey gerektirmez ve en çoğunu yakalar. Sonra tarayıcının geliştirici araçları: hem kontrast oranını hem de ekran okuyucunun gördüğü şey olan erişilebilirlik ağacını gösterir; düğmeniz o ağaçta adsız görünüyorsa yanıtınızı çoktan aldınız. Üçüncüsü gerçek bir ekran okuyucu: Windows'ta NVDA ücretsizdir, macOS ve iOS'ta VoiceOver, Android'de TalkBack sisteme gömülüdür. Bunlardan biriyle geçirilen on dakika, herhangi bir yazıdan çok öğretir.

Lighthouse'un erişilebilirlik bölümü gibi otomatik araçlar da yararlıdır, yerlerini bildiğiniz sürece: mekanik kuralları denetlerler. "Görsel" yazan bir alternatif metin onlardan geçer. Odak sırası ölçülmez. Neyin devamı olduğu anlaşılmayan "daha fazla" etiketli bir düğme aralarından süzülüp gider. Yüz almak, mekanik hatanız olmadığı anlamına gelir; sayfanın kullanılabilir olduğu anlamına gelmez.

Erişilebilirlik katmanı eklentileri, yani siteyi tek satır kodla erişilebilir yapmayı vadeden yüzen kutular üzerine bir söz: HTML'inizde yanlış olan şey, üstüne serilen bir katmanla düzelmez. Düğme olmayan bir div, o eklenti kurulduktan sonra da düğme değildir. Belirli bir ürünü sınamadık ve ad da vermiyoruz; yalnızca işe yarayan yolun işaretlemenin kendisini değiştirmek olduğunu söylüyoruz.

Yapay zekayla hızlı yol

Erişilebilirlik işinin iki yarısı vardır ve dil modeli yalnızca birinde iyidir; ama o yarıda gerçekten iyidir. Mekanik yarı, yani işaretlemeyi değiştirmek, öğelere ad vermek, başlıkları sıraya koymak, tam da hızlı bir modelin saniyeler içinde yaptığı iştir. Diğer yarı, yani gerçek bir kişinin işini bitirip bitiremeyeceği, onun erişemeyeceği yerdedir; çünkü sayfanızı görmez. O hâlde hızlı yol şudur: sınamayı siz yapın, yeniden yazmayı devredin. Sıradan bir bileşen için hızlı ve ucuz bir model yeter; kendi etkileşimi olan bir bileşen, bir tarih seçici ya da bir birleşik kutu için daha güçlü bir modele geçin. Güncel tercihimiz <a class="text-link" href="/tr/ai/">yapay zeka bölümünde</a>.

  1. Önce klavye sınamasını kendiniz yapın ve nerede takıldığınızı yazın. Modelin sizin yerinize yapamayacağı tek kısım budur.
  2. Tüm sayfayı değil tek bir bileşeni ayırın ve onun gerçek HTML'ini alın. İşaretlemeyi yapıştırmak yerine anlatmak, alakasız yanıtın tek başına en büyük sebebidir.
  3. Aşağıdaki tarifi çalıştırın. "Görünüm değişmez" cümlesini atmayın; yoksa yanıt bir düzeltme değil, yeni bir tasarım olarak döner.
  4. Çıktıyı sayfaya koyun ve aynı klavye sınamasını yeniden yapın. Bu adımı yapmadıkça hiçbir şey düzelmiş olmaz, yalnızca değişmiş olur.

Kopyalamaya hazır şablon

Rol: web erişilebilirliği gözden geçiricisi.

Bu bileşenin işaretlemesi:
{bu tek bileşenin gerçek HTML'ini buraya yapıştırın}

Kullanılan renkler, hex kodlarıyla:
{örneğin #07090f arka plan üstünde #8690a6 metin}

Bu bileşenin yapması gereken:
{tek cümleyle}
Sayfa dili: {Türkçe}

Kurallar:
- Görünüm değişmez. Yalnızca yapı, adlar ve sıra.
- HTML'de doğru öğe varsa onu kullan. ARIA yalnızca HTML'de o iş için öğe yoksa.
- Her değişiklik için tek satır yaz: ne değişti ve hangi WCAG ölçütünü karşılıyor.
- Kontrast oranlarını bu hex kodlarından hesapla ve denetleyebilmem için adımları da yaz.
- Eklediğin her metin, aria-label'dan alternatif metne kadar, sayfa dilinde olsun.
- Sonunda, işlenmiş sayfayı görmeden doğrulayamadıklarını ayrı bir listede say.

Çıktıya güvenmeden önce: O son liste, yani "sayfayı görmeden doğrulayamadıklarım", buradaki en değerli çıktıdır ve sizin işiniz oradan başlar. İki şeyi de kendiniz denetleyin: kontrast sayılarını geliştirici araçlarındaki renk seçiciden okuyun, çünkü ondalık aritmetik tam da modellerin kaydığı yerdir; ve modelin görmediği bir görsel için yazılmış her alternatif metni silip kendiniz yazın. O bir betimleme değil, tahmindir.

Bu işte yapay zeka

Buradaki konumumuz basit: mekanik yarıyı devredin, hüküm yarısını kendinizde tutun. Dil modeli bu konuda üç işte gerçekten iyidir: bir işaretleme parçasını anlamsal biçimine dönüştürmek, okunabilir adı olmayan öğeleri bulmak ve bir WCAG ölçütünü kendi kodunuz üzerinden açıklamak, ki bu standardı öğrenmenin en hızlı yoludur. Devretmediğimiz şey: sayfanın kullanılabilir olup olmadığına karar vermek.

Gerçekten işe yarayan araçlar

  • Claude Bir bileşenin anlamsal olarak yeniden yazılması ve her değişikliğin hangi ölçütü karşıladığının açıklanması için iyi. İran, Anthropic'in desteklenen ülkeler listesinde yok; bunu Anthropic'in kendi sayfasında okuduk.
  • Gemini "Bu neden erişilebilir değil" sorularına ve Farsça alternatif metne yeter; Farsçayı da iyi anlar. Google'ın kendi sayfası Gemini web uygulamasının 230'dan fazla ülke ve bölgede çalıştığını söylüyor ve İran o listede yok.
  • Claude Code Dosyaları gördüğü için bütün bir temayı taramaya uygundur: her outline: none'ı, etiketsiz her alanı ve adsız her düğmeyi bulmak. Kurulumu ücretsizdir ama Anthropic aboneliği ister ve İran desteklenen ülkeler listesinde değil.

Nerede geri teper

Bu konuda üç belirgin risk. Birincisi: model işlenmiş sayfanızı görmez; bu yüzden odak sırası, halkanın görünürlüğü ya da görsel üstüne oturan metin hakkında söylediği her şey bir denetim değil tahmindir. İkincisi, sandığınızdan daha yaygın: "bunu erişilebilir yap" dediğinizde yanıt genelde aynı div'e eklenmiş bir role, bir tabindex ve birkaç aria özniteliğidir; oysa doğru yanıt tek bir sade HTML öğesiydi. ARIA belirtiminin kendi birinci kuralı, HTML'de o iş için bir öğe varken ARIA yazmamaktır; bağlantısı bu bloğun sonunda. Üçüncüsü: modelin eklediği her metin, aksini söylemedikçe İngilizce gelir; Farsça bir sayfanın içindeki İngilizce bir aria-label, ekran okuyucunun cümlenin ortasında aksan değiştirmesi demektir. Ve modelin görmediği bir görsel için yazılmış alternatif metin betimleme değildir; silin. Her aracın İran'dan nasıl ödenebileceği için satın alma rehberine bakın.

Kaynaklar: W3C: Using ARIA, first rule W3C: Understanding contrast (minimum) W3C: Understanding use of colour Anthropic: supported countries Google: where Gemini Apps are available

Bu tavsiyenin sınırı

AA düzeyini karşılamak bir taban, bir sertifika değil. Her mekanik ölçütü geçen bir sayfa gerçek bir kişi için hâlâ kullanılamaz olabilir; tersi de doğrudur. İki sınır daha: bu ders yalnızca web sayfasıyla ilgili; PDF'lerin, altyazı ve sesli betimlemeli videonun ve mobil uygulamaların kendi kuralları var. Hepsinden önemlisi, erişilebilirlik kötü metni düzeltmez; ekran okuyucu kafa karıştıran bir cümleyi kusursuz okur ve okuyucunun kafası karışık kalır. Dürüst olunacak bir yer daha var: bazı bileşenler, bir tarih seçici ya da iki başlık satırlı bir tablo, gerçekten zordur ve doğru yanıt genelde elle yazılmış ARIA değil, tarayıcının yerel öğesi ya da iyi sınanmış bir kütüphanedir.

Kendi işimizden

Bu sitenin CSS dosyasında duran ve sayfa kaynağında okunabilen üç karar. Birincisi, a etiketi genel olarak text-decoration: none taşır ve metin içi bağlantılar ayrı bir sınıf alır; çünkü her bağlantının altını çizmek menünün, kartların ve logonun da altını çizer. O sınıfın alt çizgisi 1,5 piksel kalınlığında bir degrade arka plandır, hover ve focus-visible durumunda 2 piksele çıkar, box-decoration-break: clone taşır çünkü onsuz iki satıra bölünen bir bağlantının yalnızca bir parçasının altı çizilir ve zorunlu kontrast kipinde gerçek alt çizgiyi geri getiren bir forced-colors bloğu vardır, çünkü o kip arka plan görsellerini atar. İkincisi, palet tek mavi değil iki mavi taşır: arka planımızda metin olarak mavi 7,32:1'dir, ama aynı mavinin üstündeki beyaz yalnızca 2,72:1'dir; bu yüzden 5,17:1 olan daha koyu bir mavi, yalnızca mavinin kendisinin arka plan olduğu durum için tanımlıdır. Bu kararı açıklayan yorum, dosyada değişkenin hemen üstünde durur. Üçüncüsü, iki piksellik halka ve üç piksel boşlukla tek bir genel focus-visible kuralı ve body içindeki ilk öğe olan bir içeriğe atla bağlantısı.

Gerçek devam soruları

Erişilebilirlik SEO'yu etkiler mi?

Google erişilebilirliği bir sıralama etkeni olarak duyurmadı ve biz de böyle bir iddiada bulunmuyoruz. Ama örtüşme gerçek: sıralı başlıklar, doğru alternatif metin, anlamsal HTML ve görsel değil gerçekten metin olan metin, hem okuyucuya hem tarayıcı botuna yarar. Bu tartışmanın daha dolusu sayfa içi SEO dersinde.

Farsça, sağdan sola bir site bir şeyi değiştirir mi?

İki şey önem kazanır. Birincisi html etiketindeki lang özniteliği; çünkü ekran okuyucu sesini ve telaffuzunu ondan alır ve yanlış bir lang, Farsçanın İngiliz aksanıyla okunması demektir; başka dildeki bölümlerin de kendi lang'i olmalıdır. İkincisi CSS'te sol ve sağ yerine mantıksal özellikler; yoksa yerleşim bir dilde doğru, diğerinde aynalanmış çıkar. CSS dersi bunu örneklerle gösteriyor.

Eski bir sitem var, nereden başlamalıyım?

Ucuz olan ve tüm siteyi birden düzelten üçüyle: odak halkasını geri getirin, tıklanabilir her şeye Tab ile ulaşıldığından emin olun ve soluk metinlerin kontrastını yükseltin. Bu üçü genelde birkaç satır CSS'tir. Alternatif metin ve başlık yapısı sonraki adımdır ve sayfa sayfa yapılır.