سؤال

لم يكن لدي سبب وضع علامة عنصر داخل أسطورة عنصر (لم يعتقد حقا عن ذلك أو رأيت عليها القيام به).ولكن مع تصميم أنا وتنفيذ أنه من المغري أن تفعل ذلك.

هذا ما كنت أنوي القيام به:

<fieldset>
<legend><label for="formInfo">I would like information on</label></legend>
<select id="formInfo">
    <option value="Cats">Cats</option>
    <option value="Dogs">Dogs</option>
    <option value="Lolz">Lolz</option>
</select>
</fieldset>

أنه يعمل كما هو متوقع (النقر التسمية تركز المقابلة المدخلات) في Firefox3, سفاري, اوبرا, و IE6/7 و يمر من صحة, ولكن أنا أتساءل فقط إذا كان هناك أي أسباب معروفة (الوصول ؟ دلالات الألفاظ ؟ المتصفح المسائل) لماذا لا ينبغي أن يكون القيام به

هل كانت مفيدة؟

المحلول

أين هو </fieldset>?

لغويا, legend يصف fieldset, كما label يصف حقل واحد.

مجموعة الحقول من المفترض أن تستخدم في مجموعة معا لغويا المجالات ذات الصلة (على سبيل المثال ، "عنوان" حقول قد حقول الإدخال على الشارع ، المدينة ، البلد).

على افتراض أن يكون لديك أكثر من حقل واحد في حقول ، ثم تفعل ما توحي لك لا لغويا معنى له-تحتاج إلى إنشاء منفصلة أسطورة النص الذي يصف حقول ، ثم تسمية لكل حقل.

إذا كان لديك فقط حقل واحد ، ثم أنت لا تحتاج إلى حقول أو أسطورة في كل شيء.

لذا, في الأساس, يجب أن لا تفعل ما تفعله.

إذا كنت أفعل ذلك إلى عناصر إضافية إرفاق قواعد CSS أو جافا سكريبت الأحداث ، أنت أفضل حالا باستخدام عناصر مثل عامة div و span لا تخلط بين النص إلى كلام و الأخرى غير المرئية وكلاء المستخدم.

أي وضع في div أو span هو فعال محايدة من حيث إمكانية الوصول/دلالات (يعني لا شيء) مقابل استخدام الدلالي عنصر (حتى لو كان فقط قليلا, كما في هذه الحالة) ، والتي يحتمل أن تكون مضللة.تخيل حتى في أفضل الأحوال ، سيناريو التصميم الخاص بك في النص إلى كلام المتصفح:أن قراءة النص بصوت عال مرتين ، مرة باسم الأسطورة مرة التسمية-لماذا يريد شخص ما عبارة "أود معلومات عن" قراءة بصوت عال مرتين لهم ؟ خاصة أنه له معنى فقط في سياق الخيارات في select التحكم.

نصائح أخرى

وكذلك، فإن عنصر التسمية نفسه يبدو على ما يرام - انها وصف العنصر "formInfo"، ولهذا فلا تقلق. لغويا، ولكن، ما هو هذا القول عن العنصر legend؟ ومن المفترض أن تكون التسمية التوضيحية للمجموعة حقول بأكمله ....

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top