2013-02-13 22 views
8

Şu anda bir forma bir tarih girişi ekliyorum. Bir 'Başlangıç ​​Tarihi' ve 'Bitiş Tarihi' girdim ancak her iki giriş için sadece tek bir etiket ('Tarihler') kullanmak istiyorum.İki giriş için tek etiket

Bunu yapmak mümkün mü? Erişilebilirlik endişeleri nelerdir?

Şu anki düşüncem, gösterilen 'Tarihler' etiketinin ekran okuyucular için her giriş için iki gizli etiketine sahip olması. Bu yol gitmek için mi? Bu tür şeyleri yapan büyük web sitelerinin örnekleri var mı? (Mümkünse Hükümet internet siteleri)?

Bu, bir devlet kurumu tarafından kullanıcı olabilecek bir projedir, bu nedenle erişilebilirliğe uygun olarak katı kurallar vardır.

+0

nasıl 'kullanım' tanımlıyorsunuz? Etiketin tıklanması iki alanı da ("for' özniteliğinde olduğu gibi") odaklamalı mı demek istiyorsun? – BenM

+0

İyi bir özellik, yardımcı teknolojinin, kullanıcıyı doğru girdi vb. Hakkında bilgilendirmesine izin verecek şekilde ayarlanmalıdır. – AverageMarcus

cevap

6

benzer bir şey aracılığıyla CSS kullanarak sayfanın dışına ayarlanabilir Ben en iyi işaretlemeyi düşünüyorum

HTML

: etiketler, "Öpücük" için legend kullanın fieldset yılında girdi sarın hem inputs için labels kullanabilir ve gizlemek olurdu

CSS

Ayrıca
fieldset { 
    border: none; 
} 
label { 
    margin-left: -999em; 
} 
input { 
    display: block; 
} 

Fiddle here

bkz: WCAG 2, H71: Providing a description for groups of form controls using fieldset and legend elements

1

Buradaki sorun, her etiket için yalnızca bir tane for belirtebilmenizdir. Erişilebilirlik amaçları için, her bir tarih için iki adet labels birini göstermenin en iyi olacağını düşünürdüm. Bu şekilde, bir ekran okuyucu kullanan herkes vb. Her giriş için geçerli bir etiket alır.

<label for="x">x name</label><input name="x"/> 
<label for="y">y name</label><input name="y"/> 
+0

Sadece ekran okuyucular için gizli etiketler kullanmanızı önerir misiniz? – AverageMarcus

+0

Öneriler gizli etiketlerde ne olduğundan% 100 emin değil. Bazı okuyucular gizli değerleri okumazlarsa şaşırmazdım, sanırım bunun gizli de tanımınıza bağlı olacağını düşünüyorum! – Liam

+3

Bu, en erişilebilirlik dostu yaklaşımdır ve sorunu ilk sırada oluşturmayı önler. Önemli bir erişilebilirlik özelliği olan kavramsal olarak basit ve anlaşılabilir bir durumdur. Bilişsel zorlukları olan kişilerin, beklenen girdileri ve gerçek girdi için kontrolü açıklayan bir metin arasında basit ve anlaşılabilir bir ilişkiye sahip olmaları gerekir. Bu nedenle, görsel görsellikte etiketler * gizlenemez *. –

4

Bence en iyi bahis, her girişe bir etiket eklemektir. Sonra aslında sayfada görüntülemek istemiyorsanız etiket için basitçe

.hide { 
    position: absolute; 
    left: -9999em; 
} 

... ya da bu durumda

+1

Şüphesiz 'Ekran: hiçbiri' konumdan daha iyi olur: mutlak '? – AverageMarcus

+4

Bazı ekran okuyucular 'ekranı görmezden gelirler: hiçbiri' elemanları. – BenM

+0

Gerçekten mi? Bu bana haber. Hiç örneğin var mı? – AverageMarcus

İlgili konular