Hatalı alanı adlandırın ve neyin yanlış olduğunu yalnızca renkle değil metinle söyleyin. Kayıt ve randevu formlarından örnekler.
Kırmızı çerçeveyle ve açıklamasız dönen bir form birçok kişiyi çaresiz bırakır: görme engelli biri bir şeyin başarısız olduğunu fark etmeyebilir, renk körü biri çerçeveyi göremeyebilir, herkes neyin yanlış olduğundan emin olmayabilir. WCAG 2.1, 3.3.1 başarı ölçütü, bir girdi hatası otomatik algılanırsa hatalı öğenin belirlenmesini ve hatanın kullanıcıya metinle açıklanmasını ister.
"Girdi hatası", hem boş bırakılmış zorunlu bilgiyi hem de yanlış biçimdeki ya da izin verilen değerlerin dışındaki bilgiyi kapsar. Mesajı nasıl göstereceğiniz size kalmış: alanın yanında satır içi, üstte bir özette ya da bir uyarıda. Renk ve simgeler metni destekleyebilir ama onun yerini alamaz. Sayfa bir değeri otomatik değiştirirse, örneğin bir sayıyı sınırlarsa, kullanıcıya bu da metinle bildirilmelidir.
Hatanın nasıl düzeltileceğini söylemek 3.3.3’e aittir; ancak tek mesaj çoğu zaman ikisini de karşılar. Mesajın alanla programatik ilişkilendirilmesi büyük ölçüde 1.3.1 ve 4.1.2 gibi diğer ölçütlerin konusudur. Bu sayfa, hatanın hiç belirlenip belirlenmediğini ve metinle açıklanıp açıklanmadığını ele alır.
DOJ’un web erişilebilirliği rehberi, erişilemeyen formları, eksik hata uyarıları dahil, yaygın engeller arasında sayar. Bir sürücü belgesi randevusu, okul kayıt dosyası ya da ilçe sağlık merkezi randevusunda yalnızca görsel olan bir hata, vatandaşın temel bir hizmeti kendi başına tamamlayamaması demektir. Daha fazlası için yaygın engeller sayfasına bakın.
<label for="cocuk-dogum">Çocuğun doğum tarihi</label>
<input id="cocuk-dogum" class="alan gecersiz">
<style>.gecersiz { border: 2px solid #d00; }</style><label for="cocuk-dogum">Çocuğun doğum tarihi</label>
<input id="cocuk-dogum" aria-invalid="true" aria-describedby="cocuk-dogum-hata">
<p id="cocuk-dogum-hata" class="hata">
Çocuğun doğum tarihi: bir tarih girin, örneğin 17.04.2018.
</p><div class="hata-kutusu">Lütfen işaretli alanları düzeltin.</div><div role="alert" class="hata-kutusu">
<h2>2 sorun bulundu</h2>
<ul>
<li><a href="#veli">Veli adı: bir ad girin</a></li>
<li><a href="#okul-posta">Posta kodu: 5 hane girin</a></li>
</ul>
</div>// 8’in üzerindeki kişi sayısı sessizce 8 yapılıyor
if (kisi.value > 8) kisi.value = 8;if (kisi.value > 8) {
kisi.value = 8;
kisiNotu.textContent = "Kişi sayısı 8 olarak değiştirildi; bir alan için üst sınır budur.";
}// SwiftUI
TextField("Posta kodu", text: $posta)
.overlay(RoundedRectangle(cornerRadius: 6)
.stroke(postaGecersiz ? Color.red : Color.gray))// SwiftUI
VStack(alignment: .leading) {
TextField("Posta kodu", text: $posta)
if postaGecersiz {
Text("Posta kodu: 5 hane girin.")
.foregroundColor(.red)
.accessibilityLabel("Hata. Posta kodu: 5 hane girin.")
}
}// Jetpack Compose
OutlinedTextField(
value = posta, onValueChange = { posta = it },
label = { Text("Posta kodu") },
isError = postaGecersiz // yalnızca kırmızı çerçeve
)// Jetpack Compose
OutlinedTextField(
value = posta, onValueChange = { posta = it },
label = { Text("Posta kodu") },
isError = postaGecersiz,
supportingText = { if (postaGecersiz) Text("Posta kodu: 5 hane girin.") },
modifier = Modifier.semantics { if (postaGecersiz) error("5 hane girin") }
)aria-invalid ve bağlantılı açıklamaların varlığını doğrulayabilir ama mesajın anlamlı olup olmadığını söyleyemez. Mesajları okuyun.Corpowid, dijital erişilebilirlik alanındaki yenilikçi yaklaşımı ve performansı nedeniyle dünyanın önde gelen araştırma ve danışmanlık şirketlerinden biri olan Gartner tarafından takdir edilmiştir. Bu rozetler, yapay zeka destekli ve kapsayıcı web deneyimleri oluşturma konusundaki kararlılığımızı yansıtmaktadır.