2012-05-01 8 views
842

मैं कुछ लोगों के काम में भूमिका विशेषताओं को देख रहा हूं। मैं भी इसका इस्तेमाल करता हूं, लेकिन मुझे इसके प्रभाव के बारे में निश्चित नहीं है।एचटीएमएल में "भूमिका" विशेषता का उद्देश्य क्या है?

उदाहरण के लिए:

<header id="header" role="banner"> 
    Header stuff in here 
</header> 

या:

<section id="facebook" role="contentinfo"> 
    Facebook stuff in here 
</section> 

या:

<section id="main" role="main"> 
    Main content stuff in here 
</section> 

इस भूमिका के लिए आवश्यक गुण है?

क्या यह विशेषता अर्थशास्त्र के लिए बेहतर है?

क्या यह एसईओ में सुधार करता है?

भूमिकाओं की एक सूची here मिल सकती है, लेकिन मुझे लगता है कि कुछ लोग अपना स्वयं का बनाते हैं। क्या यह भूमिका विशेषता का अनुमत या सही उपयोग है?

इस पर कोई विचार?

उत्तर

758

भूमिकाओं आप देख ARIA 1.0 के हिस्से के रूप में परिभाषित किया गया है, और फिर बाद में एचटीएमएल 5 में शामिल के अधिकांश। कुछ नए HTML5 तत्व (संवाद, मुख्य, आदि) मूल एआरआईए भूमिकाओं पर भी आधारित हैं।

http://www.w3.org/TR/wai-aria/

वहाँ दो प्राथमिक कारण अपनी मूल अर्थ तत्व के अलावा भूमिकाओं उपयोग करने के लिए कर रहे हैं।

कारण # 1। उस भूमिका को ओवरराइड करना जहां कोई मेजबान भाषा तत्व उचित नहीं है या, विभिन्न कारणों से, कम से कम अर्थात् उचित तत्व का उपयोग किया गया था।

इस उदाहरण में, एक लिंक का उपयोग किया गया था, भले ही परिणामी कार्यक्षमता नेविगेशन लिंक की तुलना में अधिक बटन-जैसी हो।

<a href="#" role="button" aria-label="Delete item 1">Delete</a> 

स्क्रीन पाठकों के लिए एक बटन (के रूप में एक कड़ी के खिलाफ) के रूप में इस सुनेंगे, और तुम वर्ग आईटीआई और div-आईटीआई से बचने के लिए एक सीएसएस विशेषता का भी उपयोग कर सकते हैं।

*[role="button"] { 
    /* style these a buttons w/o relying on a .button class */ 
} 

कारण # 2। एआरआईए भूमिका लागू करने वाले ब्राउज़र का समर्थन करने के लिए मूल तत्व की भूमिका का बैक अप लेना, लेकिन मूल तत्व की भूमिका को अभी तक लागू नहीं किया है।

उदाहरण के लिए, "मुख्य" भूमिका कई वर्षों से ब्राउज़र में समर्थित है, लेकिन यह एचटीएमएल 5 के अपेक्षाकृत हालिया जोड़े है, इसलिए कई ब्राउज़र अभी तक <main> के लिए अर्थशास्त्री का समर्थन नहीं करते हैं।

<main role="main">…</main> 

यह तकनीकी रूप से अनावश्यक है, लेकिन कुछ उपयोगकर्ताओं की सहायता करता है और किसी को भी नुकसान नहीं पहुंचाता है। कुछ सालों में, यह तकनीक शायद अनावश्यक हो जाएगी।

तुम भी लिखा है:

मैं देख रहा हूँ कुछ लोगों को अपने स्वयं बनाते हैं। क्या यह भूमिका विशेषता का अनुमत या सही उपयोग है?

यह वास्तविक भूमिका शामिल नहीं होने तक विशेषता का वैध उपयोग है। ब्राउज़र टोकन सूची में पहली मान्यता प्राप्त भूमिका लागू करेंगे।

<span role="foo link note bar">...</a> 

सूची में से केवल link और note वैध भूमिकाओं हैं, और इसलिए लिंक भूमिका है क्योंकि यह पहले आता है लागू किया जाएगा। आप कस्टम भूमिकाओं का उपयोग करते हैं, सुनिश्चित करें कि वे (आदि एचटीएमएल, एसवीजी, MathML,) ARIA में किसी भी निर्धारित भूमिका या मेजबान भाषा का उपयोग कर रहे

+13

यह लिंक भी सहायक हो सकता है। एचटीएमएल में एरिया का उपयोग करना। http://rawgithub.com/w3c/aria-in-html/master/index.html –

+2

आपने [role = "बटन"] के सामने सार्वभौमिक चयनकर्ता क्यों रखा? – Evgeny

+2

@EugeneXa मेरा अनुमान है कि किसी भी तत्व को '[भूमिका = "बटन"]' के साथ 'एक [भूमिका = "बटन"] करने से बचाएगा, span [role = "बटन"] ' – ngplayground

135

जैसा कि मैंने इसे समझ लिया है, भूमिकाएं प्रारंभ में एक्सएचटीएमएल द्वारा परिभाषित की गई थीं लेकिन उन्हें बहिष्कृत कर दिया गया था। हालांकि, अब उन्हें एचटीएमएल 5 द्वारा परिभाषित किया गया है, यहां देखें: http://www.w3.org/TR/wai-aria/complete#roles

भूमिका विशेषता का उद्देश्य वेब अनुप्रयोग के हिस्से के रूप में एक तत्व (और उसके बच्चों) के सटीक कार्य को पार्सिंग सॉफ़्टवेयर की पहचान करना है। यह ज्यादातर स्क्रीन पाठकों के लिए एक एक्सेसिबिलिटी चीज के रूप में है, लेकिन मैं इसे एम्बेडेड ब्राउज़र और स्क्रीन स्क्रैपर्स के लिए उपयोगी होने के रूप में भी देख सकता हूं। असामान्य HTML क्लाइंट के लिए उपयोगी होने के लिए, विशेषता को मेरे द्वारा लिंक किए गए spec से भूमिकाओं में से एक पर सेट करने की आवश्यकता है। यदि आप अपना खुद का बनाते हैं, तो यह 'भविष्य' कार्यक्षमता काम नहीं कर सकती - एक टिप्पणी बेहतर होगी। यहाँ

चलन: http://www.accessibleculture.org/articles/2011/04/html5-aria-2011/

-10

एंकर से Bootstrap बटन के लिए उपयोगी के साथ संघर्ष नहीं करना

<a href="#" class="btn btn-info" role="button">Link Button</a> 

यहाँ से: Bootstrap Buttons

+9

यह वास्तव में सच नहीं है क्योंकि बूटस्ट्रैप बटन बिल्कुल वैसे ही प्रस्तुत करते हैं। एक बटन की तरह दिखने के लिए बनाए गए '' टैग पर 'भूमिका' विशेषता केवल स्क्रीन पाठकों को इसकी पहचान करने में सहायता करेगी। –

6

इस भूमिका के लिए आवश्यक गुण है?

उत्तर: हाँ

  • भूमिका विशेषता पहुँच रिच इंटरनेट एप्लीकेशन (WAI-ARIA) समर्थन करने के लिए XML- आधारित भाषाओं में भूमिका, जब भाषाओं अपनी भूमिका विशेषता परिभाषित नहीं है परिभाषित करने के लिए आवश्यक है।
  • हालांकि यही कारण है कि भूमिका विशेषता प्रोटोकॉल और प्रारूप कार्य समूह द्वारा प्रकाशित की गई है, इस विशेषता में अधिक सामान्य उपयोग के मामले भी हैं।

यह प्रदान करता है:

  • पहुँच क्षमता
  • डिवाइस अनुकूलन
  • सर्वर साइड प्रसंस्करण
  • परिसर डेटा विवरण, ... आदि।
+2

किसी भी मंच के लिए मोबाइल एप्लिकेशन विकसित करते समय सब कुछ पूरी तरह से अप्रासंगिक और अनावश्यक है। – andreszs

+5

मोबाइल एप्लिकेशन विकसित करते समय एंड्रयू पहुंच योग्यता अप्रासंगिक है? क्या आप गंभीर हैं? – cuddlecheek

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