Кой е най-добрият вариант при динамично прилагане на състоянията на ARIA? Питам само, тъй като не винаги е лесно да се дешифрира правилното използване само от спецификациите.
Трябва ли да приложите
false
като състояние, когато можете? С това имам предвид, има ли разлика между изричното казване наfalse
или липсата на атрибута, ако да, каква?Трябва ли тези атрибути да присъстват при първоначалното зареждане на DOM или да се превключват само при взаимодействие с тях? Имам предвид предимно
aria-states
, а неaria-properties
илиaria-roles
, тъй като е по-малко вероятно да се променят.
Пример 1
<div role="tablist">
<a href="/bg#" role="tab" aria-controls="panel-1" aria-selected="true">Tab 1</a>
<a href="/bg#" role="tab" aria-controls="panel-2" aria-selected="false">Tab 2</a>
</div>
срещу (забележка: aria-selected
не присъства, когато false
)
<div role="tablist">
<a href="/bg#" role="tab" aria-controls="panel-1" aria-selected="true">Tab 1</a>
<a href="/bg#" role="tab" aria-controls="panel-2">Tab 2</a>
</div>
Пример 2
<div>
<div id="panel-1" role="tabpanel" aria-hidden="false"></div>
<div id="panel-2" role="tabpanel" aria-hidden="true" style="display:none"></div>
</div>
срещу (забележка: атрибутът е премахнат отново, aria-hidden
не присъства, когато false
)
<div>
<div id="panel-1" role="tabpanel"></div>
<div id="panel-2" role="tabpanel" aria-hidden="true" style="display:none"></div>
</div>
трябва ли изобщо да се използва aria-hidden
, тъй като ще бъде видим в даден момент?
Използвам style=display:none
като пример, вероятно бихте искали да използвате .active
и/или .visuallyhidden
клас вместо това.
false
стойност (на която се опитах да отговоря), 2 първоначално зареждане на DOM, 3. използване наaria-hidden
. Мисля, че би имало смисъл да създадете отделни въпроси за двата допълнителни въпроса (и да ги редактирате тук). Съгласен ли си? - person unor   schedule 08.04.2015