Атрибути roll барои чӣ илова шуд?
sobes.tech AI
Ҷавоб аз AI
Атрибут role дар истифода мешавад дар ARIA (Accessible Rich Internet Applications) барои муайян кардани намуди равзанаи корбарии унсури интерфейс. Ин кӯмак мекунад ба технологияҳои ёрдамӣ, монанди хонандаи экранҳо, фаҳмидани мақсади унсур ва интиқоли ин маълумот ба корбарони дорои маъюбият. Он семантикаи HTML-ро пурра мекунад, махсусан барои унсурҳое, ки семантикаи дохилӣ надоранд ё вақте ки семантикаи стандартӣ кофӣ нест.
Масалан:
- Унсури
div, ки ба он ролиbuttonтаъин шудааст, ҳамчун тугма дарк карда мешавад аз ҷониби хонандаи экран, ҳатто агар он функсионалӣ ва семантикаи HTML-ро надошта бошад.
<div role="button" tabindex="0" aria-pressed="false">
Нажми ман
</div>
- Роли
navigationдар унсуриnav(ҳол он киnavаллакай семантикаи дохилии навигатсияро дорад) метавонад дар баъзе ҳолатҳо тафсири онро беҳтар кунад.
<nav role="navigation">
<ul>
<li><a href="/">Асосӣ</a></li>
</ul>
</nav>
- Баъзе виджетҳои мураккаб, ки аз унсурҳои номуайян сохта шудаанд, ролҳои худро барои намоиши дуруст мегиранд:
<div role="tablist">
<button role="tab" aria-selected="true" aria-controls="panel-1" id="tab-1">Таб 1</button>
<button role="tab" aria-selected="false" aria-controls="panel-2" id="tab-2">Таб 2</button>
</div>
<div id="panel-1" role="tabpanel" aria-labelledby="tab-1">
Мазмуни таби 1.
</div>
<div id="panel-2" role="tabpanel" aria-labelledby="tab-2" hidden>
Мазмуни таби 2.
</div>
Атрибут role унсурҳоро мувофиқи функсия ва мақсади онҳо классификатсия мекунад, ва ба ин васила ҳамкории дақиқ ва муфид барои корбароне, ки аз технологияҳои ёрдамӣ истифода мебаранд, таъмин мешавад. Муҳим аст, ки онро дар ҳамоҳангӣ бо дигар атрибутҳои ARIA (масалан, aria-label, aria-expanded, aria-hidden) истифода баред, ки ҳолат ва хосиятҳои унсурҳоро интиқол медиҳанд.
Бояд дар хотир дошт:
- Ҳамеша ба семантикаи табиӣ ва HTML5 афзалият дода мешавад. Агар унсури HTML мувофиқ вуҷуд дошта бошад, онро ба ҷои имитацияи рафтори он бо
roleва дигар атрибутҳои ARIA истифода баред. Масалан, истифодаи<button>дар ҷои<div role="button">. - Тағйир додани роли унсур рафтори дохилии онро тағйир намедиҳад. Масалан,
role="button"дарdivонро фокусшаванда ё фаъолшаванда бо Space ё Enter намекунад бе илова кардани JavaScript.