2008-10-27 28 views
5

भीतर एक लेबल तत्व रैपिंग मैं एक पौराणिक कथा तत्व के अंदर एक लेबल तत्व डाल करने के लिए एक कारण नहीं था कभी नहीं किया है (वास्तव में कभी नहीं इसके बारे में सोचा या देखा यह किया)। लेकिन डिजाइन के साथ मैं कार्यान्वित कर रहा हूं, ऐसा करने के लिए यह आकर्षक है।एक पौराणिक कथा तत्व

यहाँ मैं क्या करने के लिए परीक्षा रहा हूँ:

<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 में (लेबल पर क्लिक इसी इनपुट केंद्रित है) और यह मान्यता गुजरता है, लेकिन मैं बस सोच रहा हूं कि क्या कोई ज्ञात कारण हैं (अभिगम्यता? अर्थशास्त्र? ब्राउज़र समस्याएं) यह क्यों नहीं किया जाना चाहिए

उत्तर

11

अपने </fieldset> कहां है?

अर्थात्, legend describes a fieldset, जैसे label एक फ़ील्ड का वर्णन करता है।

fieldsets (उदाहरण के लिए, एक "पता" fieldset सड़क, शहर और देश के लिए इनपुट फ़ील्ड हो सकता है) समूह को एक साथ अर्थ की दृष्टि से संबंधित क्षेत्रों के लिए किया जा करने वाले हैं।

मान लें कि आपके पास फ़ील्ड में एक से अधिक फ़ील्ड हैं, तो जो भी आप सुझाव देते हैं वह अर्थपूर्ण रूप से समझ में नहीं आता है - आपको फ़ील्डसेट का वर्णन करने वाले अलग-अलग किंवदंती पाठ को बनाने की आवश्यकता है, फिर प्रत्येक फ़ील्ड के लिए एक लेबल।

यदि आपके पास केवल एक फ़ील्ड है, तो आपको फ़ील्ड या किंवदंती की आवश्यकता नहीं है।

तो, मूल रूप से, आपको वह नहीं करना चाहिए जो आप कर रहे हैं।

आप के लिए, आप div और span की तरह सामान्य तत्वों का उपयोग कर से बेहतर है कि पाठ से वाक् और अन्य गैर दृश्य न समझ रहे सीएसएस नियम या जावास्क्रिप्ट घटनाओं संलग्न करने के लिए अतिरिक्त तत्वों के लिए यह कर रहे हैं उपयोगकर्ता एजेंट

यानी, किसी div या span में डाल जो संभवतः भ्रामक है (यह कुछ भी नहीं निकलता है) एक अर्थ तत्व का दुरुपयोग (यहां तक ​​कि केवल थोड़ा है, इस मामले में के रूप में) की तुलना में पहुँच/अर्थ विज्ञान के संदर्भ में प्रभावी रूप से तटस्थ है,। टेक्स्ट-टू-स्पीच ब्राउज़र में अपने लेआउट के लिए सर्वश्रेष्ठ-केस परिदृश्य की कल्पना करें: पाठ को दो बार जोर से पढ़ा जाता है, एक बार पौराणिक कथा के रूप में और एक बार लेबल के रूप में - कोई व्यक्ति वाक्यांश "मुझे जानकारी चाहिए" उन्हें दो बार जोर से पढ़ें? विशेष रूप से यह केवल select नियंत्रण में विकल्पों के संदर्भ में समझ में आता है।

+0

वोट दिया गया। आरई: अंतिम पैराग्राफ - ... और यदि फ़ील्ड में और फ़ील्ड हैं तो पौराणिक कथाओं को उन क्षेत्रों के लिए भी घोषित किया जाएगा, जो शायद अवांछित होंगे। –

+0

समापन FIELDSET टैग को टेक्स्ट एडिटर द्वारा बंद कर दिया गया। मैं इसे वापस जोड़ने के लिए गया था, यह अभी भी वहां था, लेकिन कोड ब्लॉक में नहीं। मैं आपके उत्तर की सराहना करता हूं - केवल अच्छी तरह से सोचा इनपुट मैं उम्मीद कर रहा था। मैं बाड़ पर था और आपने मुझे नीचे से बात की है। धन्यवाद! –

+0

एक साइड नोट के रूप में, लीजेंड तत्व सीएसएस के साथ नियंत्रण करना थोड़ा मुश्किल है। मैं पूर्ण स्थिति का उपयोग करने जा रहा था, लेकिन समस्याओं में भाग गया। अंत में, मैंने लीजेंड तत्व से गुजरने का फैसला किया और एक विशेष कक्षा के साथ एक लैबेल का उपयोग किया। –

0

अच्छी तरह से, लेबल तत्व स्वयं ठीक लगता है - यह "formInfo" तत्व का विवरण है, इसलिए कोई चिंता नहीं है। अर्थात्, हालांकि, legend तत्व के बारे में यह क्या कह रहा है? यह संपूर्ण fieldset के लिए एक शीर्षक होना चाहिए था ....

संबंधित मुद्दे