WAI-ARIA - Interações acessíveis na web

35
ACESSIBILIDADE WAI-ARIA

description

A WAI-ARIA serve para estender o significado das interações do seu site. Quando as tags do HTML5 vieram, elas já começaram um trabalho importante de dar significado às estruturas do layout. Você consegue marcar agora o que é um menu de navegação, uma sidebar, um header, um footer etc. Esse trabalho é muito importante por que ajuda a definir a importância dos elementos que cada elemento contém. Veja um artigo completo neste link: http://tableless.com.br/wai-aria-estendendo-o-significado-das-interacoes/

Transcript of WAI-ARIA - Interações acessíveis na web

Page 1: WAI-ARIA - Interações acessíveis na web

ACESSIBILIDADE WAI-ARIA

Page 2: WAI-ARIA - Interações acessíveis na web

DIEGO EIS

slideshare.net/diegoeis bit.ly/locawebstyle

@diegoeis @tableless tableless.com.br

Page 3: WAI-ARIA - Interações acessíveis na web
Page 4: WAI-ARIA - Interações acessíveis na web

ESTENDENDO O SIGNIFICADO

Page 5: WAI-ARIA - Interações acessíveis na web

NOVAS TAGS DO HTML5As novas tags do HTML5 ajudaram a externar a semântica dos elementos.

Page 6: WAI-ARIA - Interações acessíveis na web

div#cabecalho

div#rodape

div#sidebar div#content div#sidebar

Page 7: WAI-ARIA - Interações acessíveis na web

div

div

div div div

Page 8: WAI-ARIA - Interações acessíveis na web

header#cabecalho

footer#rodape

aside#sidebar article#content aside#sidebar

Page 9: WAI-ARIA - Interações acessíveis na web

header

footer

aside article aside

Page 10: WAI-ARIA - Interações acessíveis na web

MICRODATAAs microdatas nos ajudaram a marcar micro informações no meio do conteúdo.

Page 11: WAI-ARIA - Interações acessíveis na web

Olá, eu me chamo Diego Eis, sou brasileiro,

trabalho na Locaweb como Coordenador do Time

de Front-end. Tenho um website chamado

Tableless e você pode entrar em contato comigo

pelo email [email protected].

name

jobTitle

URL

worksFor

email

nacionality

Page 12: WAI-ARIA - Interações acessíveis na web

MAS E AS INTERAÇÕESComo você avisa para um leitor de tela ou outros meios de acesso sobre as interações que acontecem na tela? !Por exemplo: uma modal abrindo, validações de formulários, submenu, tabs, collapse etc…

Page 13: WAI-ARIA - Interações acessíveis na web
Page 14: WAI-ARIA - Interações acessíveis na web
Page 15: WAI-ARIA - Interações acessíveis na web
Page 16: WAI-ARIA - Interações acessíveis na web

WAI-ARIA

Page 17: WAI-ARIA - Interações acessíveis na web

INTERAÇÕESWAI-ARIA aumenta a acessibilidade em conteúdos dinâmicos nos componentes interfaces.

Page 18: WAI-ARIA - Interações acessíveis na web

ROLESSão atributos que representam ações nos elementos HTML. Elas são categorizadas em 4 tipos.

Page 19: WAI-ARIA - Interações acessíveis na web

ABSTRACTPara definição de conceitos gerais. Não devemos usar para marcar conteúdo.

WIDGETPara elementos de interface soltos, como caixas de alerta, botões, checkbox, links, tabs etc.

DOCUMENT STRUCTUREPara estruturas de organização da página. Estruturas que não são interativas.

LANDMARKPra regiões de páginas que são pontos importantes para onde o usuário navegaria, por exemplo: buscas, main, sidebar, formulários etc…

Page 20: WAI-ARIA - Interações acessíveis na web

<ul> <li id="tab1"> <a href=“#”>Primeira Aba</a> </li> </ul>

<ul role="tablist"> <li id="tab1" role="tab" aria-selected="true"> <a href=“#”>Primeira Aba</a> </li> </ul><div role="tabpanel" aria-labelledby="tab1">

<p>Conteúdo, my friend…</p> </div>

Page 21: WAI-ARIA - Interações acessíveis na web

<nav role="navigation"> !!!!!</nav>

!!<li role="menuitem"> <a href=“#”>Primeira Aba</a> </li> !

!<ul role="menubar"> !!!</ul>

Page 22: WAI-ARIA - Interações acessíveis na web

<select role="combobox" aria-multiselectable="true"> ! <option role="listbox"> Opção 2 </option> ! <option role="listbox"> Opção 2 </option> !</select>

Page 23: WAI-ARIA - Interações acessíveis na web

LISTA COMPLETA DAS ROLEShttp:// bit.ly /wai-aria-roles !http://www.w3.org/TR/wai-aria/roles#roles_categorization

Page 24: WAI-ARIA - Interações acessíveis na web

STATES AND PROPERTIESMuitas vezes precisamos customizar formulários ou outros elementos com algum código que não é o padrão. Por exemplo, customizar checkboxes ou radio buttons. Quando isso acontece, precisamos indicar que estes elementos devem ter o mesmo peso de significado dos elementos originais.

Page 25: WAI-ARIA - Interações acessíveis na web

<div role="radiogroup"> <span role="radio" aria-checked=“unchecked"> Option Unchecked </span> ! <span role="radio" aria-checked=“checked"> Option Checked </span> </div>

Page 26: WAI-ARIA - Interações acessíveis na web

<div class="collapse"> <h1>Um exemplo simples com texto</h1> <p>…</p> ! <div class="collapse-box" aria-expanded=“true”> … </div> </div>

Page 27: WAI-ARIA - Interações acessíveis na web

<a class="btn btn-primary" aria-describeby="desc-send"> Enviar </a> !<p id=“desc-send"> Esta é uma descrição explicando a ação… </p>

Page 28: WAI-ARIA - Interações acessíveis na web

<ul> <li aria-haspopup=“true"> <a href="#">Mensagens</a> <ul> <li><a href="#">Enviar</a></li> <li><a href="#">Criar</a></li> <li><a href="#">Editar</a></li> <li><a href="#">Relatórios</a></li> </ul> </li> </ul>

Page 29: WAI-ARIA - Interações acessíveis na web

LISTA DE STATES E PROPERTIEShttp:// bit.ly /wai-aria-states-properties !http://www.w3.org/TR/wai-aria/states_and_properties

Page 30: WAI-ARIA - Interações acessíveis na web

USE SEMPRE AS TAGS APROPRIADASNão substitua a semântica natural dos elementos. !Eu sei que WAI-ARIA é muito, muito bom. Mas não prefira usá-las ao invés de usar os elementos padrão do HTML. Eles trazem mais semântica do que elementos neutros usando WAI-ARIA.

Page 31: WAI-ARIA - Interações acessíveis na web

<span role="button">Botão</span>

<!-- Não faça assim: -->

<!-- Se você pode fazer assim: -->

<button>Botão</button>

Page 32: WAI-ARIA - Interações acessíveis na web

INTERAÇÃO COM O TECLADOTodas as interações com WAI-ARIA devem ser usadas via teclado. !Todos os "widgets" devem responder aos comandos e combinações padrão de teclas dos sistemas operacionais. Por exemplo, se você desenha um botão com uma tag span e coloca um role=“button”, este elemento deve trabalhar como um botão, ou seja, se o usuário der foco a este elemento e apertar ENTER, o botão deve agir.

Page 33: WAI-ARIA - Interações acessíveis na web

INSERINDO WAI-ARIA VIA JAVASCRIPTPrefira colocar estes atributos via Javascript. Não há problema algum fazer dessa forma. !Por outro lado, se você sabe que o seu público usa Javascript desabilitado (o que é muito, muito difícil), prefira colocar diretamente no código HTML

Page 34: WAI-ARIA - Interações acessíveis na web

PARA PESQUISAR MAIShttp://tableless.com.br/wai-aria-estendendo-o-significado-das-interacoes/ !http://oaa-accessibility.org/examples/ !http://www.w3.org/TR/wai-aria/ !https://developer.mozilla.org/en-US/docs/Accessibility/ARIA

Page 35: WAI-ARIA - Interações acessíveis na web

ENTÃO, FECHOU!

A palestra vai ficar aqui: slideshare.net/diegoeis !@diegoeis @tableless tableless.com.br !bit.ly/locawebstyle