219
Agosto 2012

Webinar: Acessibilidade Web para desenvolvedores

Embed Size (px)

DESCRIPTION

Apresentação utilizada no Webinar do iMastersPRO dia 23 de agosto de 2012

Citation preview

Page 1: Webinar: Acessibilidade Web para desenvolvedores

Agosto 2012

Page 2: Webinar: Acessibilidade Web para desenvolvedores

[email protected]@internativa.com.brfacebook.com/internativabrasil(21) 9925-5404 - @horaciosoares

Horácio Soares

Page 3: Webinar: Acessibilidade Web para desenvolvedores

Acessibilidade me lembra?

Page 4: Webinar: Acessibilidade Web para desenvolvedores

Acessibilidade para quem?

Page 5: Webinar: Acessibilidade Web para desenvolvedores

Todos nós...

Page 6: Webinar: Acessibilidade Web para desenvolvedores

Quem mais sofre com a falta de

acessibilidade?

Page 7: Webinar: Acessibilidade Web para desenvolvedores
Page 8: Webinar: Acessibilidade Web para desenvolvedores

Marta e suas amigas…

Page 9: Webinar: Acessibilidade Web para desenvolvedores

Analfabeto

funcional

Um em cada cinco

brasileiros (20,3%) é

analfabeto funcional, de

acordo com a Pnad

(Pesquisa Nacional por

Amostra de Domicílios)

2009, divulgada pelo

IBGE.Homem de costas, sentado de frente para um quadro branco sem nada escrito.

Page 10: Webinar: Acessibilidade Web para desenvolvedores

Calvin, pouca experiência e

medo do computador

Homem com muito medo olhando por cima de um notebook.

Page 11: Webinar: Acessibilidade Web para desenvolvedores

Copyright © 2009. World Wide Web Foundation. All rights reserved 11

Disabilities

Low literacy

Literate in poorly-supported languages

The Web is not fully accessible toperhaps 2 billion, including people with …

Little experience with technology

Challenges due to aging

Five groups of people for whom Web accessibility can be challenging:

Page 12: Webinar: Acessibilidade Web para desenvolvedores

E além desses 5 grupos?

Page 13: Webinar: Acessibilidade Web para desenvolvedores

Gabriel, linguagem em desenvolvimento...

Gabriel compenetrado, olhando para o monitor e clicando com o mouse.

Agora ele está olhando e brincando como teclado.

Page 14: Webinar: Acessibilidade Web para desenvolvedores

Max, com

tendinite,

usando o

mouse

com a mão

trocada.

Homem com expressão de desespero, usando o mouse com a mão esquerda

Page 15: Webinar: Acessibilidade Web para desenvolvedores
Page 16: Webinar: Acessibilidade Web para desenvolvedores

Como o Luli disse no Digitalks no Rio em 2012:

“Nesse mundo Mobile, somostodos daltónicos e sofremos do

Mal de Parkinson”

Page 17: Webinar: Acessibilidade Web para desenvolvedores

“design for mobile people,...

Foto: Rosenfield Media...not for mobile device”

Page 18: Webinar: Acessibilidade Web para desenvolvedores

Todos nós na primeira experiência.

Um criança com camisa social e gravata em frente a um notebook

Page 19: Webinar: Acessibilidade Web para desenvolvedores

E finalmente, o bilionário

cego!!!

Cifrão desenhado com moedas douradas

Page 20: Webinar: Acessibilidade Web para desenvolvedores

Google, o bilionário cego!!! É apenas um robô que indexa conteúdo em texto.

Dilbert fazendo parte do logotipo do Google e falando “eu não posso ver”.

Page 21: Webinar: Acessibilidade Web para desenvolvedores

Estatísticas no Brasil

Page 22: Webinar: Acessibilidade Web para desenvolvedores

Estatística: segundo IBGE no Brasil (2000)

180 milhões de habitantes;

24,3 milhões de pessoas com deficiência;

15 milhões de pessoas com mais de 65 anos;

5,4 milhões de pessoas com mais de 65 anos e que já

possuem alguma deficiência.

Page 23: Webinar: Acessibilidade Web para desenvolvedores

Censo 2010

Page 24: Webinar: Acessibilidade Web para desenvolvedores

Dos cerca de 190 milhões de

brasileiros, aqueles com pelo menos

uma deficiência, seja visual, auditiva,

motora ou mental, somam 45 milhões

(23,9%).

Page 25: Webinar: Acessibilidade Web para desenvolvedores

Leis de acessibilidade

Page 28: Webinar: Acessibilidade Web para desenvolvedores

Como anda a acessibilidade digital no Brasil?

Page 29: Webinar: Acessibilidade Web para desenvolvedores
Page 30: Webinar: Acessibilidade Web para desenvolvedores
Page 31: Webinar: Acessibilidade Web para desenvolvedores
Page 32: Webinar: Acessibilidade Web para desenvolvedores
Page 33: Webinar: Acessibilidade Web para desenvolvedores
Page 34: Webinar: Acessibilidade Web para desenvolvedores

Motivação pelo decreto de lei 5296

Resultado: acessibilidade para inglês ver.

Page 35: Webinar: Acessibilidade Web para desenvolvedores

Estatísticas do W3C

2,5% em 2010

5% em 2011

Sem erros de validação automática de HTML, CSS e

acessibilidade.

Page 36: Webinar: Acessibilidade Web para desenvolvedores

Acessibilidade Web

E quais são os custos?

Page 37: Webinar: Acessibilidade Web para desenvolvedores

• Curva de aprendizagem

• Alto custo no redesign

• Baixo em novos projetos

• Diminui com tempo

• Validação

• Manutenção

• Melhoria contínua

• Mudança de cultura

Page 38: Webinar: Acessibilidade Web para desenvolvedores

Qual é o custo da qualidade?

Page 39: Webinar: Acessibilidade Web para desenvolvedores

E os benefícios?

Page 40: Webinar: Acessibilidade Web para desenvolvedores

Possibilidade de atingir 100% do

público alvo;

Page 41: Webinar: Acessibilidade Web para desenvolvedores

Atender melhor todas as pessoas

Page 42: Webinar: Acessibilidade Web para desenvolvedores

Homem de terno comemorando

Fidelizar clientes

Page 43: Webinar: Acessibilidade Web para desenvolvedores

Mais fácil de usar e aprender

Page 44: Webinar: Acessibilidade Web para desenvolvedores

Proteção contra processos pela falta da

acessibilidade

Page 45: Webinar: Acessibilidade Web para desenvolvedores

Visualizar os benefícios da acessibilidade

Manutenção mais

rápida e barata,

melhor

performance…

Page 46: Webinar: Acessibilidade Web para desenvolvedores

Valorização da

Diversidade e

Responsabilidade Social.

Mãos entrelaçadas

Page 47: Webinar: Acessibilidade Web para desenvolvedores

Mulher com notebook em sinal de ok

Vantagemcompetitiva

Page 48: Webinar: Acessibilidade Web para desenvolvedores

Melhoria daqualidade.

Mãe e filha felizes na praia dando uma estrela

Page 49: Webinar: Acessibilidade Web para desenvolvedores

Um caminho para acessibilidade vem da busca pelas melhores

IDADES

Page 50: Webinar: Acessibilidade Web para desenvolvedores

IDADES?

Page 51: Webinar: Acessibilidade Web para desenvolvedores

Acessibil

IDADE}

Page 52: Webinar: Acessibilidade Web para desenvolvedores
Page 53: Webinar: Acessibilidade Web para desenvolvedores
Page 54: Webinar: Acessibilidade Web para desenvolvedores
Page 55: Webinar: Acessibilidade Web para desenvolvedores

Acessibil

Usabil

IDADE}

Page 56: Webinar: Acessibilidade Web para desenvolvedores

Comercial Mercado Livre

2011“Eu compro o

que quiser, senão quiser, não compro”

Comercial do Mercado Livre 2011

Page 57: Webinar: Acessibilidade Web para desenvolvedores

AcessibilUsabil

Simplic

IDADE}

Page 58: Webinar: Acessibilidade Web para desenvolvedores

ESPN Brasil– abril 2010

Page 59: Webinar: Acessibilidade Web para desenvolvedores

ESPN Brasil– abril 2010

X

Page 60: Webinar: Acessibilidade Web para desenvolvedores
Page 61: Webinar: Acessibilidade Web para desenvolvedores

10 princípios de UX do Google

Princípio 3. O simples é poderoso.

Page 62: Webinar: Acessibilidade Web para desenvolvedores
Page 63: Webinar: Acessibilidade Web para desenvolvedores

Em uma interface perfeita para as pessoas, elas nunca deveriam errar, principalmente no mundo mobile…

Page 64: Webinar: Acessibilidade Web para desenvolvedores

AcessibilUsabil

Simplic

InterativIDADE}

Page 65: Webinar: Acessibilidade Web para desenvolvedores
Page 66: Webinar: Acessibilidade Web para desenvolvedores
Page 67: Webinar: Acessibilidade Web para desenvolvedores

AcessibilUsabil

SimplicInterativ

Veloc IDADE}

Page 68: Webinar: Acessibilidade Web para desenvolvedores
Page 69: Webinar: Acessibilidade Web para desenvolvedores

X

Page 70: Webinar: Acessibilidade Web para desenvolvedores

XX

Page 71: Webinar: Acessibilidade Web para desenvolvedores

10 princípios de UX do Google

Princípio 2 - cada milisegundo importa.

Melhor definição de milisegundo?

Page 72: Webinar: Acessibilidade Web para desenvolvedores

AcessibilUsabil

SimplicInterativ

Veloc

EncontrabilIDADE}

Page 73: Webinar: Acessibilidade Web para desenvolvedores
Page 74: Webinar: Acessibilidade Web para desenvolvedores

AcessibilUsabil

SimplicInterativ

VelocEncontrabil

Atrativ

IDADE}

Page 75: Webinar: Acessibilidade Web para desenvolvedores
Page 76: Webinar: Acessibilidade Web para desenvolvedores

10 princípios de UX do Google

Princípio 8 – agrade aos olhos sem distrair a mente

Page 77: Webinar: Acessibilidade Web para desenvolvedores

AcessibilUsabil

SimplicInterativ

VelocEncontrabil

Atrativ

Util

IDADE}

Page 78: Webinar: Acessibilidade Web para desenvolvedores

10 princípios de UX do Google

Princípio 1 – foque nas pessoas: suas vidas, trabalho, sonhos.

Page 79: Webinar: Acessibilidade Web para desenvolvedores

Case apresentado por Rodrigo Tigre, POPULIS - Content Marketing Digitalks Rio de Janeiro Abril2012

Page 80: Webinar: Acessibilidade Web para desenvolvedores

Case apresentado por Rodrigo Tigre, POPULIS - Content Marketing Digitalks Rio de Janeiro Abril2012

Page 81: Webinar: Acessibilidade Web para desenvolvedores

Case apresentado por Rodrigo Tigre, POPULIS - Content Marketing Digitalks Rio de Janeiro Abril2012

Page 82: Webinar: Acessibilidade Web para desenvolvedores

Observação e identificação de um problema...

Page 83: Webinar: Acessibilidade Web para desenvolvedores

Case apresentado por Rodrigo Tigre, POPULIS - Content Marketing Digitalks Rio de Janeiro Abril2012

Page 84: Webinar: Acessibilidade Web para desenvolvedores

Case apresentado por Rodrigo Tigre, POPULIS - Content Marketing Digitalks Rio de Janeiro Abril2012

Page 85: Webinar: Acessibilidade Web para desenvolvedores
Page 86: Webinar: Acessibilidade Web para desenvolvedores

AcessibilUsabil

SimplicInterativ

VelocEncontrabil

AtrativUtil

Facil

IDADE}

Page 87: Webinar: Acessibilidade Web para desenvolvedores

AcessibilUsabil

Simplic

Page 88: Webinar: Acessibilidade Web para desenvolvedores
Page 89: Webinar: Acessibilidade Web para desenvolvedores

AcessibilUsabil

SimplicInterativ

VelocEncontrabil

AtrativUtil

Facil

Portabil…

IDADE}

Page 90: Webinar: Acessibilidade Web para desenvolvedores
Page 91: Webinar: Acessibilidade Web para desenvolvedores

InvestigaçãoObservaçãoColaboração

AnáliseAvaliaçãoValidação

A melhor idade vem da: }

Page 92: Webinar: Acessibilidade Web para desenvolvedores

By Erico Fileno

Page 93: Webinar: Acessibilidade Web para desenvolvedores

Diretrizes de acessibilidade

Page 94: Webinar: Acessibilidade Web para desenvolvedores

WCAG Web Content Accessibility Guidelines

WCAG 1.0 – 05 de maio de 1999 Em português: http://www.utad.pt/wai/wai-pageauth.html

WCAG 2.0 – 11 de dezembro de 2008http://www.ilearn.com.br/TR/WCAG20/

Recomendações para acessibilidade do conteúdo da Web 1.0 e 2.0 do W3C

Page 95: Webinar: Acessibilidade Web para desenvolvedores

http://www.governoeletronico.gov.br/acoes-e-projetos/e-MAG

EMAG 3.0

Page 96: Webinar: Acessibilidade Web para desenvolvedores

Iniciativas de

Acessibilidade

Page 97: Webinar: Acessibilidade Web para desenvolvedores

Imagem de bonecos representando pessoas de mãos dadas .

W3C – WAIWeb Accessibility Initiative

1.WCAG (Web Content Accessibility Guidelines) recomendações para acessibilidade do conteúdo da Web.

2.UAAG3.ATAG 4.ARIA

Page 98: Webinar: Acessibilidade Web para desenvolvedores

W3C – WAIWeb Accessibility Initiative

1.WCAG2.UAAG (The User Agent Accessibility

Guidelines) diretrizes de acessibilidade para navegadores e tecnologias assistivas.

3.ATAG 4.ARIA

Page 99: Webinar: Acessibilidade Web para desenvolvedores

W3C – WAIWeb Accessibility Initiative

1.WCAG2.UAAG3.ATAG (Authoring Tool Accessibility

Guidelines) ferramentas de criação de páginas/conteúdo Web.

4.ARIA

Page 100: Webinar: Acessibilidade Web para desenvolvedores

W3C – WAIWeb Accessibility Initiative

1.WCAG2.UAAG3.ATAG4.ARIA (Accessible Rich Internet

Applications) Aplicações Internet Ricas e Acessíveis.

Page 101: Webinar: Acessibilidade Web para desenvolvedores

Principais barreiras de acessibilidade

Page 102: Webinar: Acessibilidade Web para desenvolvedores

Imagens

Recomendação 1.1 Alternativas em Texto (Referências no WCAG 1.0 e WCAG 2.0) : Fornecer alternativas em texto para qualquer conteúdo não textual.

Page 103: Webinar: Acessibilidade Web para desenvolvedores

Obs.: Deve ser fornecido um equivalente textual para a imagens. A descrição deve ser a

melhor e menor possível.

Imagens

Page 104: Webinar: Acessibilidade Web para desenvolvedores

<a href=¨#¨> </a>

Imagens e links

Page 105: Webinar: Acessibilidade Web para desenvolvedores

<a href=¨#¨>

<img src='http://[…]xxx.jpg'

alt=“70 Anos de Pelé – fotos e vídeos” width='XXX' height='XXX' />

</a>

Imagens e links

Page 106: Webinar: Acessibilidade Web para desenvolvedores

Imagem com descrição ineficiente

Banner do MCA - Módulo Criança e Adolescente onde a descrição da imagem é apenas a sigla

“MCA”.

Page 107: Webinar: Acessibilidade Web para desenvolvedores

Elementos sem descrição textual

adequada (imagens, flash, etc.)

Page 108: Webinar: Acessibilidade Web para desenvolvedores
Page 109: Webinar: Acessibilidade Web para desenvolvedores

Links

Page 110: Webinar: Acessibilidade Web para desenvolvedores

Links: identificação de destino

Recomendação 13.1 (Referência no WCAG 1.0): Identifique claramente o alvo de cada link.

Recomendação 2.4 Navegável (Referência no WCAG 2.0 – critério 2.4.4 Finalidade do link): Fornecer formas de ajudar os usuários a navegar, localizar conteúdos e determinar o local onde estão.

Page 111: Webinar: Acessibilidade Web para desenvolvedores

Links

Page 112: Webinar: Acessibilidade Web para desenvolvedores

“Clique aqui”, “Saiba mais”, “vejaMais”… 41.700.000 respostaspara “clique aqui” no Google.

Page 113: Webinar: Acessibilidade Web para desenvolvedores

Links

Saída acessível

Page 114: Webinar: Acessibilidade Web para desenvolvedores

S

Links

Link no título da chamada com cara de link.

Page 115: Webinar: Acessibilidade Web para desenvolvedores

S

Links

Title aplicado ao link.

Page 116: Webinar: Acessibilidade Web para desenvolvedores

Se ao entrar no link o usuário for desligado do site corrente.

- Links que abrem novos sites sem que o usuário

note que foi levado para outro site.

Page 117: Webinar: Acessibilidade Web para desenvolvedores

... <li><a href="http://.../serialization/"><span lang="en">Building Accessible Websites</span>.<img src="novo_site.gif" alt="abre novo site"></a><br> Excelente livro em inglês - versão digital.</li> ...

Page 118: Webinar: Acessibilidade Web para desenvolvedores

Se ao entrar no link o usuário for desligado do site corrente em uma

nova janela.

- Essa prática não é recomendada pelo W3C. Links que abrem em nova janela sem que o

usuário seja avisado.

Page 119: Webinar: Acessibilidade Web para desenvolvedores

... <li><a href="http://.../serialization/"><span lang="en">Building Accessible Websites</span>.<img src="novo_site.gif" alt="novo site em nova janela"></a><br> Excelente livro em inglês - versão digital.</li> ...

Page 120: Webinar: Acessibilidade Web para desenvolvedores

Links para formatos diferentes do HTML.

- Links para arquivos em PDF, DOC, XLS, PNG, entre outros, sem a devida descrição do tipo de

arquivo que será baixado e seu tamanho.  

Page 121: Webinar: Acessibilidade Web para desenvolvedores

Quando não se tem ideia:

Clique aqui

Saiba mais

Continue lendo

Veja mais

Page 122: Webinar: Acessibilidade Web para desenvolvedores

Quando somos surpreendidos:

Conheça a legislação

Leia o manual do produto

Page 123: Webinar: Acessibilidade Web para desenvolvedores

Quando falta informação:

Faça download da legislação

Baixe aqui o manual do produto

Page 124: Webinar: Acessibilidade Web para desenvolvedores

Sem surpresas!Faça download da legislação (formato doc, 1.32 mb)

Baixe aqui o manual do produto (formato pdf, 2.47 mb)

Page 125: Webinar: Acessibilidade Web para desenvolvedores

Sem surpresas e poluiçãoFaça download da legislação

Baixe aqui o manual do produto

Page 126: Webinar: Acessibilidade Web para desenvolvedores

Sem surpresas e poluiçãoFaça download da legislação

Baixe aqui o manual do produto

Formato DOC - 1.32 Mb

Page 127: Webinar: Acessibilidade Web para desenvolvedores

Sem surpresas e poluiçãoFaça download da legislação

Baixe aqui o manual do produto

Recomendações:

● A informação pode estar escondida, mas deve aparecer quando o elemento ganhar foco com o mouse ou teclado. Essa recomendação não é válida para MOBILE.

● Informações relevantes não devem ser incluídas via atribulo TITLE.

Formato PDF - 2.47 Mb

Page 128: Webinar: Acessibilidade Web para desenvolvedores

O Mundo ideal!Baixe aqui o manual do produto (formato pdf, 2.47 mb)

Baixe aqui o manual do produto (formato doc, 2.84 mb)

Baixe aqui o manual do produto (formato html, 1.24 mb)

Baixe aqui o manual do produto (formato txt, 705 kb)

Page 129: Webinar: Acessibilidade Web para desenvolvedores

Mundo ideal sem poluição

Manual do produtoPara baixar:

Baixar o Manual

PDF – tamanho 1.5 Mb

HTML – tamanho 0.7 Mb

TXT – tamanho 0.5 Mb

Selecione um formato

Page 130: Webinar: Acessibilidade Web para desenvolvedores

Links dependentes de script

Recomendação 6.3 (Referência no WCAG 1.0) : Certifique-se que as páginas são acessíveis e usáveis mesmo quando as tecnologias utilizadas não são suportadas ou se encontram desligadas.Recomendação 4.1 (Referência no WCAG 2.0) : Maximizar a compatibilidade com atuais e futuros agentes de usuário, incluindo tecnologias assistivas.

Page 131: Webinar: Acessibilidade Web para desenvolvedores

Visão do inferno

<a href=“javascript:meuFruFruFavorito();” style=“color:#900;”>Clique aqui!!!</a>

E esse exemplo não é dos piores...

Page 132: Webinar: Acessibilidade Web para desenvolvedores

Mundo (quase) idealHTML<a href=“/algo.html” id=“frufru”>Meu frufru favorito</a>CSS#frufru{

color:#900;}JavaScriptvar frufru = document.getElementById(‘frufru’);function meuFruFruFavorito() {

[codigo]}frufru.onclick = meuFruFruFavorito;frufru.onkeypress = meuFruFruFavorito;

Page 133: Webinar: Acessibilidade Web para desenvolvedores

Links e campos de formulários que não se parecem como tal.

Page 134: Webinar: Acessibilidade Web para desenvolvedores
Page 135: Webinar: Acessibilidade Web para desenvolvedores
Page 136: Webinar: Acessibilidade Web para desenvolvedores

Design pesado e com poucos espaços entre elementos.

Uso de tecnologias em desuso e pouco acessívels

Page 137: Webinar: Acessibilidade Web para desenvolvedores
Page 138: Webinar: Acessibilidade Web para desenvolvedores

Idioma

Page 139: Webinar: Acessibilidade Web para desenvolvedores

IdiomaIdentificar claramente quaisquer

mudanças na linguagem natural do texto ou equivalentes textuais.

Recomendação 4.1 (Referência no WCAG 1.0) : Identifique claramente alterações ocorridas no idioma do texto do documento e em qualquer equivalente textual. Recomendação 3.1 (Referência no WCAG 2.0) : Legível: Tornar o conteúdo de texto legível e compreensível - 3.1.2 Linguagem das Partes.

Page 140: Webinar: Acessibilidade Web para desenvolvedores

Idioma

<ul class="topo_idioma"><li><a href="http://www.xyz.com/en/"> <span Lang="en"> English </span></a></li><li><li><a href="http://www.xyz.com/es/"> <span Lang="es"> Español </span></a></li><li>... </ul>

Page 141: Webinar: Acessibilidade Web para desenvolvedores

- Uso de aspectos de apresentação para veicular

informação (cores, disposição na página, etc.)

Page 142: Webinar: Acessibilidade Web para desenvolvedores

- Contraste insuficiente

Page 143: Webinar: Acessibilidade Web para desenvolvedores

Baixo contraste.

Page 144: Webinar: Acessibilidade Web para desenvolvedores

Baixo contraste e informações com foco em cores

Page 145: Webinar: Acessibilidade Web para desenvolvedores
Page 146: Webinar: Acessibilidade Web para desenvolvedores

CAPTCHA

Page 147: Webinar: Acessibilidade Web para desenvolvedores

CAPTCHA

caPTcHa Imagem: http://www.slideshare.net/jared_w_smith/web-accessibility-gone-wild-now-even-more-wilder

Page 148: Webinar: Acessibilidade Web para desenvolvedores

Captcha http://sam.zoy.org/pwntcha/

Page 149: Webinar: Acessibilidade Web para desenvolvedores

Captcha (solução inacessível e insegura)

(http://www.webvisum.com/en/main/download)

Page 150: Webinar: Acessibilidade Web para desenvolvedores

CAPTCHA and BBC iD

http://www.bbc.co.uk/blogs/bbcinternet/2010/10/captcha_and_bbc_id.html

CAPTCHA, herói ou vilão?

http://acessodigital.net/art_captcha-heroi-ou-vilao.html

Page 151: Webinar: Acessibilidade Web para desenvolvedores

Semântica

Page 152: Webinar: Acessibilidade Web para desenvolvedores

Semântica

Validação automática não garante uma boa semântica

Page 153: Webinar: Acessibilidade Web para desenvolvedores

Navegação

Page 154: Webinar: Acessibilidade Web para desenvolvedores

Navegação

1) Semântica:

Headers: <H1>...<H6>

Parágrafos: <p>texto</p>

Listas: <ul><ol><dl>

Tabelas: <table>...</table>

Formulários: <form>...</form>

Page 155: Webinar: Acessibilidade Web para desenvolvedores

Navegação

Recomendação 2.4 Navegável (Referência no WCAG 2.0): Fornecer formas de ajudar os usuários a navegar, localizar conteúdos e determinar o local onde estão. - 2.4.1 Ignorar Blocos: Disponibilizar um mecanismo para ignorar blocos de conteúdo que são repetidos.

Page 156: Webinar: Acessibilidade Web para desenvolvedores

Navegação

O primeiro elemento ativo da página deve ser um link (salto) que nos permita alcançar

diretamente o conteúdo principal.

<a href=”#conteudo” class=”salto”>Salto para conteúdo</a>

<h2><a name=”conteudo” id=”conteudo”>Título do H2</a>

</h2><a name=”conteudo” id=”conteudo”></a>

Page 157: Webinar: Acessibilidade Web para desenvolvedores

Navegação

1)Salto visível

Page 158: Webinar: Acessibilidade Web para desenvolvedores

Navegação2)Salto visível com foco http://webstanderds.org

Page 159: Webinar: Acessibilidade Web para desenvolvedores

NavegaçãoAtalhos para principais áreas do site

Recomendação 9.5 (Referência no WCAG 1.0): Providencie teclas de atalho para links importantes.

Recomendação 2.4 Navegável (Referência no WCAG 2.0): Fornecer formas de ajudar os usuários a navegar, localizar conteúdos e determinar o local onde estão. - 2.4.1 Ignorar Blocos: Disponibilizar um mecanismo para ignorar blocos de conteúdo que são repetidos.

Page 160: Webinar: Acessibilidade Web para desenvolvedores

Navegação

São três os tipos de teclas de atalho na Web:

- teclas de atalho dos navegadores: como não há uma padronização entre eles, cada browser tem seu próprio grupo de atalhos.

- teclas de atalho próprias aos leitores de tela e outras tecnologias assistivas.

- teclas de atalhos próprias ao site.

Page 161: Webinar: Acessibilidade Web para desenvolvedores

Navegação

<a href="pesquisa.html" title="tecla de atalho [1] para pesquisa" ACCESSKEY="1">

Pesquisa [1]</a>

Page 162: Webinar: Acessibilidade Web para desenvolvedores

Navegação

Navegação e orientação:

Para facilitar a navegação pelas diferentes áreas do site, é recomendada a divisão da página em regiões navegáveis diretamente com leitores de tela. Para tal sugerimos a utilização de ARIA Landmark Roles: http://www.w3.org/TR/wai-aria/roles#landmark_roles ,

- É um recurso já implementado em 2 leitores de tela usados no Brasil - Jaws (muito usado) e NVDA (aberto e gratuito).

Recomendação 2.4 Navegável (Referência no WCAG 2.0): Fornecer formas de ajudar os usuários a navegar, localizar conteúdos e determinar o local onde estão.

Page 163: Webinar: Acessibilidade Web para desenvolvedores

NavegaçãoAlgumas regiões navegáveis com Landmark ARIA:

banner – normalmente é utilizado como a região do cabeçalho do site, onde são incluídos o logotipo, slogan, etc.

complementary – área complementar ao conteúdo principal da página, por exemplo, a coluna a direita da página onde podem ser incluídos outros conteúdos.

contentinfo - área que contém as informações sobre o site como, por exemplo, copyright, privacidade, endereço e outras informações comuns ao rodapé da página.

main – Conteúdo principal da página. Área com conteúdo centrado no assunto/tema da página Web.

navigation – área de navegação do site.

search – área com uma busca.

Page 164: Webinar: Acessibilidade Web para desenvolvedores

Navegação

Landmark ARIA:

<div role="banner"> [Conteúdo do cabeçalho] </div>

<div role="navigation"> [Navegação] </div>

<div role="search"> [Busca] </div>

<div role="main"> [Conteúdo principal] </div>

<div role="complementary"> [Conteúdo principal] </div>

<div role="contentinfo"> [Rodapé] </div>

Page 165: Webinar: Acessibilidade Web para desenvolvedores
Page 166: Webinar: Acessibilidade Web para desenvolvedores
Page 167: Webinar: Acessibilidade Web para desenvolvedores

Accessible Rich Internet Applications

ARIA NOWHTML 4 + ARIA HTML5 + ARIA

http://www.abilitynet.org.uk/accessibility2/wp-content/uploads/2009/09/HTML5_Accessibility_faulkner.ppt

Page 168: Webinar: Acessibilidade Web para desenvolvedores

Navegação pelo teclado - barreiras: dropdown

Keyboard Accessibility for Web Applications http://snook.ca/archives/accessibility_and_usability/keyboard-accessibility-for-web-apps

Page 169: Webinar: Acessibilidade Web para desenvolvedores
Page 170: Webinar: Acessibilidade Web para desenvolvedores

Menu DropDown

O Professor Maurício Samy Silva, em seu livro Construindo sites com CSS e (X)HTML, propõe uma solução para um menu em cascata acessível

via teclado:

http://livrocss.com.br/cap_09/arquivo_9.24-a.html

Page 171: Webinar: Acessibilidade Web para desenvolvedores

Menu expansível

Tutorial - Accessible expanding and collapsing menuhttp://www.456bereastreet.com/archive/200705/accessible_expanding_and_collapsing_menu/

Page 172: Webinar: Acessibilidade Web para desenvolvedores

Erro ao utilizar REFRESH

Recarregar a página automáticamente:

<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="refresh" content="300" />...

Page 173: Webinar: Acessibilidade Web para desenvolvedores

Erro ao utilizar REFRESH

Page 174: Webinar: Acessibilidade Web para desenvolvedores

Utilizar o evento onChange em combos (menus de seleção)

Recomendação 8.1 (Referência no WCAG 1.0) : Criar elementos de programação, tais como programas interpretáveis e applets, diretamente acessíveis pelas tecnologias de apoio ou com elas compatíveis.

Recomendação 2.1 (Referência no WCAG 2.0) : Acessível por Teclado: Fazer com que toda a funcionalidade fique disponível a partir do teclado.

Recomendação 3.2 (Referência no WCAG 2.0) : Previsível: 3.2.1 Em Foco: Quando um componente recebe o foco, ele não inicia uma alteração de contexto.

Page 175: Webinar: Acessibilidade Web para desenvolvedores

Utilizar o evento onChange em combos (menus de seleção)

Quando um usuário com deficiência visual ou motora

(que usa o teclado para navegar) utiliza o evento

onchange num menu select (combo box), a primeira

opção é selecionada automaticamente sem que o

usuário a tenha escolhido, antes que o usuário possa

conhecer as opções disponíveis.

Page 176: Webinar: Acessibilidade Web para desenvolvedores
Page 177: Webinar: Acessibilidade Web para desenvolvedores
Page 178: Webinar: Acessibilidade Web para desenvolvedores

Utilizar o evento onChange em combos (menus de seleção)

Page 179: Webinar: Acessibilidade Web para desenvolvedores

Eevento onChange em combos

Solução 1: Retirar o evento onchange, permitindo assim a navegação via teclado pelas opções da combo box. Para confirmar a seleção do item, deve ser disponibilizado um submit (botão de Ok).

Page 180: Webinar: Acessibilidade Web para desenvolvedores

Formulários

Page 181: Webinar: Acessibilidade Web para desenvolvedores

Formulários Fieldset

-<form action="blabla.htm">-<fieldset>

-Nome <input type="text"><br>-Endereço <input type="text">

-</fieldset>-</form>

Page 182: Webinar: Acessibilidade Web para desenvolvedores

Formulários legend

-<form action="blabla.htm">-<fieldset> <legend>Dados Pessoais</legend>

-Nome <input type="text"><br>-Endereço <input type="text">

-</fieldset>-</form>

Page 183: Webinar: Acessibilidade Web para desenvolvedores

Formulários label

- <form action="blabla.htm">- <fieldset> <legend>Dados Pessoais</legend>

- <label for=“non"> Nome <input type="text" id=“non">

- </label>- <label for=“end"> Endereço <input type="text“id=“end">

- </label>- </fieldset>- </form>

Page 184: Webinar: Acessibilidade Web para desenvolvedores

<form action="blabla.htm">- <fieldset>- <legend>Dados Pessoais</legend>- <label for="non">- Nome <input type="text" id="non">- </label>- <label for="end">- Endereço <input type="text" id="end">- </label>- <fieldset><legend>Sexo</legend>- <label for="m"><input type="radio" name="g" id="m">Masculino</label>- <label for="f">- <input type="radio" name="g” id="f">Feminino</label>- </fieldset>- </fieldset>- </form>

Page 185: Webinar: Acessibilidade Web para desenvolvedores

Formulários optgroup<form id="form" method="post" action=""><p> <label for="lista-de-mercado"> Lista de Mercado:<br /> <select name="select" id="lista-de-mercado"> <option selected="selected" value="1"> Escolha um item</option> <optgroup label="Laticíneos"> <option value="2">Leite desnatado</option> <option value="3">Queijo ralado</option> <option value="4">Queijo prato</option> </optgroup> <optgroup label="Verduras"> <option value="6">Alface</option> <option value="7">Alho</option> </optgroup> </select> </label> </form>

Page 186: Webinar: Acessibilidade Web para desenvolvedores

Formulários optgroup

Page 187: Webinar: Acessibilidade Web para desenvolvedores

TabelasUso errado dos elementos HTML como

tabelas e DIVs.Recomendação 5.3. (Referência no WCAG 1.0): Não use tabelas para layout (disposição de páginas) a não ser que a tabela faça sentido quando linearizada.Recomendação 1.3 Adaptável (Referência no WCAG 2.0 – critério 1.3.2 Sequência com Significado): Criar conteúdos que possam ser apresentados de diferentes maneiras sem perder informação ou estrutura.

Page 188: Webinar: Acessibilidade Web para desenvolvedores

Tabelas

<table><tr>

<td>Janeiro</td><td>Fevereiro</td><td>Março</td>

</tr><tr>

<td>10</td><td>15</td><td>25</td>

</tr></table>

Page 189: Webinar: Acessibilidade Web para desenvolvedores

Tabelas - summary<table summary="Vendas de bananas no primeiro trimestre 2011 - tabela com 2 linhas e 3 colunas"><tr>

<td>Janeiro</td><td>Fevereiro</td><td>Março</td>

</tr><tr>

<td>10</td><td>15</td><td>25</td>

</tr></table>

Page 190: Webinar: Acessibilidade Web para desenvolvedores

Tabelas - caption<table summary="Vendas de bananas no primeiro trimestre 2011 - tabela com 2 linhas e 3 colunas"><caption>Vendas de bananas - 1o. semestre</caption><tr>

<td>Janeiro</td><td>Fevereiro</td><td>Março</td>

</tr><tr>

<td>10</td><td>15</td><td>25</td>

</tr></table>

Page 191: Webinar: Acessibilidade Web para desenvolvedores

Tabelas – id/headers<table summary="Vendas de bananas no primeiro trimestre 2011 - tabela com 2 linhas e 3 colunas"><caption>Vendas de bananas - 1o. semestre</caption><tr>

<th id=“jan">Janeiro</th><th id=“fev">Fevereiro</th><th id=“mar">Março</th>

</tr><tr>

<td headers=“jan">10</td><td headers=“fev">15</td><td headers=“mar">25</td>

</tr></table>

Page 192: Webinar: Acessibilidade Web para desenvolvedores

Tabelas – scope/col/row<table summary="Vendas de bananas no primeiro trimestre 2011 - tabela com 2 linhas e 3 colunas"><caption>Vendas de bananas - 1o. semestre</caption><tr>

<th scope=“col”>Janeiro</th><th scope=“col”>Fevereiro</th><th scope=“col”>Março</th>

</tr><tr>

<td>10</td><td>15</td><td>25</td>

</tr></table>

Page 193: Webinar: Acessibilidade Web para desenvolvedores

Performance

Page 194: Webinar: Acessibilidade Web para desenvolvedores

http://www.websiteoptimization.com/services/analyze/

Page 196: Webinar: Acessibilidade Web para desenvolvedores

MODALinacessível…

Page 197: Webinar: Acessibilidade Web para desenvolvedores

Mudança de foco (lightbox e lightwindows)

Mudanças de foco causam desorientação e problemas de navegação.

Usuários não tem a menor idéia de como achar o novo conteúdo atualizado.

As mudanças de foco impedem que usuários tenham uma visão completa da página.

- Building a Better Lightbox (recomendações de usabilidade)

http://www.habdas.org/2009/03/29/building-a-better-lightbox/

Page 198: Webinar: Acessibilidade Web para desenvolvedores
Page 199: Webinar: Acessibilidade Web para desenvolvedores
Page 200: Webinar: Acessibilidade Web para desenvolvedores
Page 201: Webinar: Acessibilidade Web para desenvolvedores
Page 202: Webinar: Acessibilidade Web para desenvolvedores

Modal acessível(prática)

http://webhipster.com/testing/accessibility/modal-dialog-latest/

Page 203: Webinar: Acessibilidade Web para desenvolvedores

Players de vídeo e áudio.

Page 204: Webinar: Acessibilidade Web para desenvolvedores

Principais barreiras de acessibilidade em vídeo:• Os controles do player de vídeo são

inacessíveis pelo teclado.• Os controles do player de vídeo podem ser

acessados pelo teclado, mas não

apresentam rótulos adequados.• Os vídeos incluídos diretamente na página,

com o uso de um player externo, começam a

tocar assim que a página é carregada.• ramente sobre esta função..

Page 205: Webinar: Acessibilidade Web para desenvolvedores

• Os vídeos não possuem audiodescrição.• Os vídeos não possuem legendas.• Os vídeos não possuem legenda oculta

("closed caption").• Os vídeos não possuem transcrição.• Quando um vídeo é disponibilizado para

download, o respectivo link não informa

claramente sobre esta função..

Page 206: Webinar: Acessibilidade Web para desenvolvedores

Validação de Acessibilidade

Globo em ambiente futurista.

Page 207: Webinar: Acessibilidade Web para desenvolvedores

Validação de Acessibilidade

Validação automática dos Padrões Web: XHTML e CSS.

Page 208: Webinar: Acessibilidade Web para desenvolvedores

Validador W3C – HTML/XHTMLhttp://validator.w3.org/

Page 209: Webinar: Acessibilidade Web para desenvolvedores

Validador W3C – CSShttp://jigsaw.w3.org/css-validator/

Page 210: Webinar: Acessibilidade Web para desenvolvedores

Validação de Acessibilidade

Validação automática e semi-automática de acessibilidade.

Page 211: Webinar: Acessibilidade Web para desenvolvedores

Da Silvahttp://www.dasilva.org.br/

Page 212: Webinar: Acessibilidade Web para desenvolvedores

Access Monitorhttp://www.acessibilidade.gov.pt/accessmonitor/

Page 213: Webinar: Acessibilidade Web para desenvolvedores

Lista de validadores indicados pelo WAI: http://www.w3.org/WAI/ER/tools/complete

Page 214: Webinar: Acessibilidade Web para desenvolvedores

Validação de Acessibilidade

Avaliação automática de contraste.

Page 215: Webinar: Acessibilidade Web para desenvolvedores

Teste de contraste http://www.vischeck.com/vischeck/ (teste de imagens e sites)

Page 216: Webinar: Acessibilidade Web para desenvolvedores

Validação de Acessibilidade

Avaliação humana por especialistas e usuários:Aplicação de lista de verificação do WCAG por

um especialista.Avaliação por usuários deficientes, experts em

acessibilidade.Teste de acesso em diferentes ambientes,

condições, navegadores, sistemas.Testes com dispositivos móveis e de

impressão.Teste de usabilidade e acessibilidade com

usuários.

Page 217: Webinar: Acessibilidade Web para desenvolvedores

Para onde caminha a

acessibilidade

Page 218: Webinar: Acessibilidade Web para desenvolvedores

HTML5WAI ARIA

MultimídiaMobileTouch

Page 219: Webinar: Acessibilidade Web para desenvolvedores

[email protected]@internativa.com.brfacebook.com/internativabrasil(21) 9925-5404 - @horaciosoares

Horácio Soares

Obrigado!