ARIA - Aplicações web ricas e acessíveis

  • View
    2.357

  • Download
    0

  • Category

    Design

Preview:

DESCRIPTION

O que fazer para manter a acessibilidade do seu sistema, sem abrir mão de uma interface rica, atrativa e dinâmica.

Citation preview

ARIA

APLICAÇÕES WEB RICAS E ACESSÍVEISO que fazer para manter a acessibilidade do seu sistema, sem abrir mão de uma interface rica, atrativa e dinâmica.

Alan Vasconcelos Alves

A EVOLUÇÃO DA INTERFACE

A EVOLUÇÃO DA INTERFACE

Os objetos em geral, vão, ao longo do tempo, se aprimorando em funcionalidade e interatividade, o que altera completamente a relação entre usuário e produto.

Até um Camaro precisou evoluir!!

A EVOLUÇÃO DA INTERFACE

E o Design participa dessa evolução?

A EVOLUÇÃO DA INTERFACE

Claro que sim! ;-)

O Design atua no aprimoramento da experiência do usuário

A EVOLUÇÃO DA INTERFACE

User Experience,

ou UX, é um campo de estudo multidisciplinar que visa enriquecer a experiência de do usuário, propondo “algo mais” além da eficácia e da eficiência de uso.

The first requirement for an exemplary user experience is to meet the exact needs of the customer, without fuss or bother. Next comes simplicity and elegance that produce products that are a joy to own, a joy to use.” Nielsen Norman Group

A EVOLUÇÃO DA INTERFACE

A Apple é a empresa que mais investe (e lucra*) com UX.

A EVOLUÇÃO DA INTERFACE

Com a Web, não poderia ser diferente.

A EVOLUÇÃO DA INTERFACE

Dos anos 90 pra cá, muitos paradigmas de uso foram alterados.

A EVOLUÇÃO DA INTERFACE

Novos elementos de interação surgiram e estes foram chamados de RIA(Rich Internet Application)

A EVOLUÇÃO DA INTERFACE

RIA é uma extensão do HTML comum, para se apresentar nas aplicações web com elementos ricos

em interação, como nos sistemas desktop.

A EVOLUÇÃO DA INTERFACE

Tecnologias como Flash, Silverlight além das bibliotecas Javascript contribuíram muito para o

crescimento vertiginoso das RIA.

A EVOLUÇÃO DA INTERFACE

Nos últimos 4 anos, novos produtos e serviços mudaram definitivamente nossa

experiência de uso na web, levando-nos a uma nova maneira de interagir.

A EVOLUÇÃO DA INTERFACE

Os sites deixaram de ser meras “páginas” para se tornarem verdadeiros ambientes interativos.

A EVOLUÇÃO DA INTERFACE

Mas nem todos foram convidados.

A EVOLUÇÃO DA INTERFACE

O uso intensivo de Flash, Ajax e outros componentes JavaScript, acabou

prejudicando a acessibilidade nas interfaces.

Por causa disso...

A EVOLUÇÃO DA INTERFACE

...Até bem pouco tempo, era necessário disponibilizar versões estáticas dos sites para atender os usuários portadores de necessidades especiais...

...Que são aqueles que usam leitores de tela, ou apenas o

teclado para navegar.

A EVOLUÇÃO DA INTERFACE

Mas desde setembro de 2006, a W3C começou a rascunhar os primeiros documentos com as diretrizes necessárias para tornar as RIAs acessíveis.

Esse conjunto de diretrizes foi chamado ARIA.Accessible Rich Internet Applications

A EVOLUÇÃO DA INTERFACE

ARIA é uma especificação assim como o HTML, CSS, XML etc.

Porém, ainda não está finalizada.

Sua última publicação foi em dezembro de 2009 sendo que a próxima está

prevista para o fim do primeiro semestre deste ano.

A EVOLUÇÃO DA INTERFACE

As especificações estão sendo construídas em conjunto com os principais representantes da indústria, sobretudo os fabricantes de browsers.

A EVOLUÇÃO DA INTERFACE

As especificações estão sendo construídas em conjunto com os principais representantes da indústria, sobretudo os fabricantes de browsers.

Inclusive o Internet Explorer!!!

A EVOLUÇÃO DA INTERFACE

Curiosidade:

Sugestão enviada à W3C pedindo a criação do elemento IMG:http://1997.webhistory.org/www.lists/www-talk.1993q1/0182.html

A EVOLUÇÃO DA INTERFACE

Com ARIA, é possível manter a acessibilidade do seu sistema, sem abrir mão de uma interface

rica, atrativa e dinâmica.

COMO FUNCIONA?

COMO FUNCIONA

Um código semântico, transmite o sentido atrelado ao conteúdo. Mas, se mal aplicado,

pode tornar o conteúdo incessível.

COMO FUNCIONA

Folhas de estilo bem aplicadas e estruturadas podem aprimorar a usabilidade do sistema.

Porém, elas podem reduzir a acessibilidade se forem mal usadas.

COMO FUNCIONA

Bibliotecas Javascript podem enriquecer a interação, tornando as interfaces mais

dinâmicas. Mas lembre-se que elas podem não funcionar em 100% dos casos.

COMO FUNCIONA

ARIA estende a semântica do documento para fornecer informações adicionais

sobre o estado da interface e sobre como interagir com ela.

COMO FUNCIONA

Ao invés de se criar um novo elemento HTML, por exemplo, o "slider", usa-se os elementos já existentes na versão atual do

HTML, desde que seja mantida a semântica.

Convocando a “categoria de base”

COMO FUNCIONA

Portanto, os novos elementos de interação ARIA (abas, sliders, menus, árvores, etc...) na verdade, não são novos elementos do HTML, mas

sim, papéis representados por elementos já constantes no HTML atual (selects, lists, inputs, buttons...)

Elenco forte e coeso

COMO FUNCIONA

Um elemento de interação ARIA é caracterizado pelas seguintes instâncias:

Elenco forte e coeso

1. Landmark (Divisões: Cabeçalho, barra de navegação, rodapé, etc...)2. Roles: (Papéis: aba, slider, árvore, etc...)3. State: (Estado: ativo/inativo, expandido/contraído, checado/Não-

checado, etc...)4. Properties: (Propriedades: Valor máximo/mínimo, campo obrigatório,

exibição do valor, etc...)

COMO FUNCIONA

role=“banner”

role=“main”

role=“contentinfo”

Papéis para estrutura

COMO FUNCIONA

role=“navigation”

role=“article”

Papéis para estrutura

COMO FUNCIONA

role=“complementary”

role=“form”

Papéis para estrutura

COMO FUNCIONA

role=“application”

role=“slider”

Papéis para widget

role=“presentation”

COMO FUNCIONA

Propriedades para widget

aria-valuetext=“Nov 03”

COMO FUNCIONA

Estados para widget

aria-pressed=“true”

aria-pressed=“false”

COMO FUNCIONA

Live regions

aria-live=“polite”

COMO FUNCIONA

Para ver a lista completa dos papéis, estados e propriedades acesse:

http://www.w3.org/WAI/PF/aria/roles

ALGUNS EXEMPLOShttp://www.alanvasconcelos.com/aria/exemplos/exemplos.html

O FUTURO

HTML5

O FUTURO

O HTML5 não é:

• Um substituto do HTML4;Apesar de ser uma evolução da linguagem.• Um substituto do Javascript;Apesar de dispensar vários de seus componentes de interface.• Um substituto do Flash;Apesar de possuir recursos de animação, de áudio e de vídeo.• Mais uma coisa bacana que não roda no I.Explorer.Apesar de... Ok, não funciona mesmo!

O FUTURO

<header> </header>

Elementos de estrutura

<footer> </footer>

<aside> </aside>

O FUTURO

<nav> </nav>

<article> </article>

Elementos de estrutura

O FUTURO

Multimídia

<video controls> <source src=movie.webm> <source src=movie.mp4> <track src=english.vtt kind=captions srclang=en> <track src=french.vtt kind=captions srclang=fr>

<p>Texto alternativo aqui com link para download do vídeo</p>

</video>

Mais detalhes em:http://youtu.be/gK72pcu3cpk

Curiosidade (sugestão enviada à W3C pedindo a criação do elemento VIDEO):http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2006-October/007520.html

ALGUNS EXEMPLOShttp://www.alanvasconcelos.com/aria/exemplos/exemplos-html5.html

COMPATIBILIDADE DAS ARIA

COMPATIBILIDADE

Browsers compatíveis

Fonte: W3C

COMPATIBILIDADE

Tecnologias assistivas compatíveis

Fonte: W3C

COMPATIBILIDADE

Frameworks compatíveis

Fonte: W3C

O FUTURO

MultimídiaMais detalhes em:http://html5accessibility.com

Hein?!?!?

?PERGUNTAS

VALEU!

ALAN VASCONCELOS – www.alanvasconcelos.com

Referências

ALAN VASCONCELOS – www.alanvasconcelos.com

WAI ARIA• Accessible Rich Internet Applications (WAI-ARIA) (internal editor's draft)• WAI-ARIA Best Practices (internal editor's draft)• WAI-ARIA Primer (internal editor's draft)• Accessible drag and drop using WAI-ARIA Gez lemon• WAI-ARIA Implementation in JavaScript UI Libraries• Using WAI ARIA Landmark Roleshttp://www.w3.org/TR/xhtml-role/

FilamentGrouphttp://www.filamentgroup.com/lab

Crianças, não façam isso em casa!Arquivos dos exemplos utilizados:http://alanvasconcelos.com/aria/exemplos-aria.zip