FORMULÁRIOS ACESSÍVEIS



Documentos relacionados
Programação para Internet I

SIMULADOS & TUTORIAIS

PROGRAMAÇÃO WEB DO LADO DO CLIENTE

COMO FUNCIONA UM FORMULÁRIO

Os componentes de um formulário são: Form, Input, Select e AreaText

Aula 05 HTML FORMULÁRIOS Prof. Daniela Pires Sumário

Colégio da Policia Militar do Estado do Tocantins. HTML5 e CSS3 Formulários Prof. Gleison Batista de Sousa

SIEP / RENAPI. Dicas HTML e CSS para Desenvolvimento. de um Site/Portal Acessível

INTRODUÇÃO AO DESENVOLVIMENTO WEB

Introdução. HyperText Markup Language HTML. Formulário. Fluxo do Formulário. Fluxo do Formulário. Fluxo do Formulário. Fluxo do Formulário

O código acima descreve o formulário com uma caixa de texto e dois botões

DICAS PARA DESENVOLVER SITE ACESSÍVEL

Mais sobre uso de formulários Site sem Ajax

0,5 pelo negrito das palavras ID, Nome, e Analisar em outro momento.

Web Design Aula 09: Formulários

TECNOLOGIAS WEB AULA 7

Desenvolvimento Web XHTML Formulários. Prof. Bruno E. G. Gomes

VPAT (Voluntary Product Accessibility Template, Modelo de Acessibilidade de Produto) do eportfolio da Desire2Learn Maio de 2013 Conteúdo

Introdução à Tecnologia Web

Tutorial Plone 4. Manutenção de Sites. Universidade Federal de São Carlos Departamento de Sistemas Web Todos os direitos reservados

Formulários em HTML - O que são e para que servem

HTML / JAVASCRIPT. A versão atual é o HTML5 (seus predecessores imediatos são HTML 4.01, XHTML 1.1, etc.).

Manual de Utilização ZENDESK. Instruções Básicas

DWEB. Design para Web. HTML5 - Marcação de formulário. Curso Superior de Tecnologia em Design Gráfico

Moodle - Tutorial para Professores

MANUAL DE UTILIZAÇÃO SISTEMA DE CADASTRO INTRANET

Bem- Vindo ao manual de instruções do ECO Editor de COnteúdo.

TUTORIAL DO ALUNO. Olá, bem vindo à plataforma de cursos a distância da Uniapae!!!

Desenvolvedor Web Docente André Luiz Silva de Moraes

QUALIDATA Soluções em Informática. Módulo CIEE com convênio empresas

Introdução. Servidor de Tempo (SNTP) com opção de horário de verão automático; 1 Cadastro do novo modelo de equipamento Urano Topmax SS


GUIA BÁSICO DA SALA VIRTUAL

FORMULÁRIOS HTML (FORMS) E ENTRADAS DE DADOS (INPUT)

Voltado para novos usuários, este capítulo fornece uma instrução para edição de Leiaute do SILAS e suas funções.

FCT Faculdade de Ciências e Tecnologia Serviço Técnico de Informática STI SGCD Sistema Gerenciador de Conteúdos Dinâmicos

CONSTRUÇÃO DE BLOG COM O BLOGGER

TECNOLOGIAS WEB. Unidade 2 Introdução a Construção de Páginas Estáticas. Luiz Leão luizleao@gmail.com

Mini-curso de PHP. Aulas ministradas por: André Luis de Paula Arthur Kalsing Diego Silva

Tutorial WEB CONTENT MANAGEMENT [WCM] Obtenha benefícios a partir das aplicações customizadas da ADMT.

Coleção - Análises de marketing em clientes de

e-mag Checklist de Acessibilidade Manual para Deficientes Visuais

WEBDESIGN. Professor: Paulo Marcos Trentin - paulo@paulotrentin.com.br Escola CDI de Videira

Linguagem de. Aula 06. Profa Cristiane Koehler

Treinamento GVcollege Módulo Acadêmico - Pedagógico

Tutorial Web Mail. Acesso e Utilização. MPX Brasil Cuiabá/MT: Av. Mal Deodoro, 1522 B Centro Norte. Contato: (65) cuiaba@mpxbrasil.com.

Formulário (Send & Recieve) Prof. Celso H. Masotti

Como incluir artigos:

Configurações do Windows para Leitores de Tela

Manual das funcionalidades Webmail AASP

Moodle - CEAD Manual do Estudante

W o r d p r e s s 1- TELA DE LOGIN

tarefa 1. Para criar uma Tarefa clique em Ativar edição.

Adapti - Technology Solutions Leonor cardoso nº 331 Fone : (041) Curitiba - PR MANUAL DO USUÁRIO

Universidade Federal do Vale do São Francisco Programa de Assistência Estudantil

Exercícios Práticos de HTML e JavaScript. <FORM ACTION="mailto:teste@gmail.com" METHOD="POST" ENCTYPE="text/plain" NAME="cadastro">

Flex. MANUAL DE USO DA FERRAMENTA FLEX O Flex como gerenciador de conteúdo

Manual do Ambiente Moodle para Professores

Monday, January 23, 12. Introdução sobre Acessibilidade na web

Programando em PHP. Conceitos Básicos

Tutorial de Integração HTML

1 Essa é a tela de login do Sistema de Atendimento Online, siga o passo a passo abaixo.

Conectar diferentes pesquisas na internet por um menu

Coleção - Análises de marketing em clientes de

ÍNDICE MANUAL SITE ADMINISTRÁVEL TV. 1. Introdução 2. Acessando o site administrável/webtv SITE ADMINISTRÁVEL 3. CONFIGURAÇÕES

Conteúdo Dinâmico. Introdução. Interação Browser x Servidor Web. Interação Browser x Servidor Web

DICAS IMPORTANTES. Alunos com dificuldades DEVEM procurar o atendimento de suporte evesp@mstech.com.br ou

Formulários HTML. Envio de Informação para o servidor

Ferramenta: Spider-CL. Manual do Usuário. Versão da Ferramenta:

Guia Rápido para Acesso, Preenchimento e Envio Formulário de Cadastro da Empresa e Formulário de Projeto

DPAlmox - Windows MANUAL DO USUÁRIO

Tutorial Acessibilidade na Web Construindo Formulários e Tabelas acessíveis

Coleção - Análises de marketing em clientes de

Observações importantes:

Manual de criação de envios no BTG360

Construtor de sites SoftPixel GUIA RÁPIDO - 1 -

Tela Inicial: O Banco de Dados e seus objetos:

Programação Web Prof. Wladimir

Coleção - Análises de marketing em clientes de

1ª PARTE DIÁRIOS ELETRÔNICOS

Guia de Início Rápido

UNIVERSIDADE FEDERAL DO VALE DO SÃO FRANCISCO UNIVASF SECRETARIA DE TECNOLOGIA DA INFORMAÇÃO STI COORDENAÇÃO DE DESENVOLVIMENTO DE SISTEMAS

02 - Usando o SiteMaster - Informações importantes

Comunidade Virtual de Disseminação e Aprendizagem-(ComViD@)

MANUAL JOOMLA 2.5 PORTAL INTERNET. Ministério do Esporte

COMO UTILIZAR O EDITOR DE TEXTO

SISTEMA DE INFORMAÇÕES ACADÊMICAS SIA

Sistema de Gerenciamento Remoto

GERENCIADOR DE CONTEÚDO

SCC - Serviço de Controle de Consignação MANUAL DO USUÁRIO DO PORTAL DO CONSIGNADO SERVIDOR

WordPress Institucional UFPel Guia Rápido

O tutorial do ambiente virtual tem o intuito de abordar e solucionar problemas que venham a existir sobre os seguintes pontos:

Portal Sindical. Manual Operacional Empresas/Escritórios

Vamos criar uma nova Página chamada Serviços. Clique em Adicionar Nova.

Tutorial USERADM Como inserir conteúdo no Portal Transparência


MANUAL DO USUÁRIO SORE Sistema Online de Reservas de Equipamento. Toledo PR. Versão Atualização 26/01/2009 Depto de TI - FASUL Página 1

O Novo Portal Etilux também foi criado para ser um facilitador para nossa Força de Vendas, abrangendo as seguintes características:

Transcrição:

Ministério da Educação Secretaria de Educação Profissional e Tecnológica IFRS Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Sul NAV Núcleo de Acessibilidade Virtual FORMULÁRIOS ACESSÍVEIS Março, 2013

Ministério da Educação Secretaria de Educação Profissional e Tecnológica IFRS Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Sul NAV Núcleo de Acessibilidade Virtual FORMULÁRIOS ACESSÍVEIS Desenvolvido por: Núcleo de Acessibilidade Virtual Contato: nav@ifrs.edu.br HISTÓRICO Data Versão Descrição Papel Autor 01/10/2012 1.0 Desenvolvimento do documento 11/03/2013 1.1 Atualização do documento Pesquisador Pesquisador Bruna P. Salton Bruna P. Salton

Formulários Acessíveis Os formulários são a forma mais comum para a prestação de serviços interativos, tendo a finalidade de coletar dados e informações a serem processados. Com relação à acessibilidade, os formulários podem vir a ser um obstáculo, caso seus desenvolvedores não possuam conhecimentos sobre o assunto. É preciso garantir que o formulário seja fácil de navegar e de entender, ou seja, o usuário deverá ter acesso e controle sobre todos os elementos do formulário e deverá conseguir compreender as informações contidas nele. Vamos conhecer algumas recomendações e dicas para a criação de formulários acessíveis. Ordem de navegação Os elementos do formulário devem ser distribuídos corretamente através do código HTML, criando, assim, uma sequência lógica de navegação. Assim, os formulários devem primeiro ser codificados considerando a ordem lógica de navegação para depois serem organizados visualmente através das folhas de estilo. OBS.: O atributo tabindex somente deverá ser utilizado quando existir real necessidade. É importante ressaltar que este atributo deverá ser utilizado com a semântica correta e deverá ser verificado manualmente se a ordem de tabulação fornecida pelo tabindex é realmente a desejada. Lembramos que as tabelas não deverão ser utilizadas para fins de layout. O propósito das tabelas é serem utilizadas apenas para dados tabulares (dados que estabelecem uma relação entre linha e coluna). Se utilizarmos uma tabela para formatar um formulário, existe uma grande chance de a ordem de navegação através do teclado não ser a correta, além de causar grande confusão para usuários navegando com leitor de tela, já que os leitores linearizam as informações em tabelas e interpretarão erroneamente o formulário. Utilização do label Uma das maneiras mais comuns de navegação entre os campos de formulário é através da tecla Tab. O usuário preenche um campo de formulário, pressiona a tecla Tab, preenche o próximo campo, e assim por diante até chegar ao final do formulário. Para pessoas que enxergam, essa é uma tarefa bastante simples. No entanto, uma pessoa cega, por exemplo, que está navegando utilizando um leitor de tela, irá passar de campo em campo com a tecla Tab sem saber o que fazer nesses campos, a não ser que o formulário tenha sido desenvolvido de maneira que cada campo esteja relacionado a sua informação em texto correspondente. Para realizar tal associação, é utilizado o elemento label.

As etiquetas de texto ou rótulos (label) devem estar associadas aos seus devidos campos de formulário (input) através do uso dos atributos for contido no elemento label e do atributo id do input, sendo necessário atribuir o mesmo valor para ambos os atributos para que a associação seja válida. A tag <label> pode ser usada para todos os elementos de formulário, exceto para os elementos buttons (seu funcionamento independe de links externos). Exemplo: <label for="nome">nome: </label> <input type="text" name="nome" id="nome" /> <label>sexo:</label> <input type="radio" id="fem" name="sexo" /> <label for="fem">feminino</label> <input type="radio" id="mas" name="sexo" /> <label for="mas">masculino</label> <label for="msg">mensagem: </label> <textarea name="msg" id="msg">digite sua mensagem</textarea> <input type="checkbox" id="receber" name="receber" /> <label for="receber">deseja receber nossa newsletter?</label> Para campos que exigem entrada de dados por parte do usuário, devem ser oferecidas, quando necessário, dicas de preenchimento que devem estar junto aos rótulos dos campos (label). Agrupamento de campos Visando uma melhor organização do formulário, é recomendado o agrupamento de campos que possuem características comuns e que estão relacionados de maneira lógica, utilizando-se o elemento fieldset, juntamente com o elemento legend. Para cada um dos agrupamentos (fieldset) é possível fornecer uma legenda (legend) que deve explicar clara e objetivamente a finalidade ou natureza dessas uniões. Exemplo: <form method="post" action="..."> <fieldset> <legend>dados Pessoais</legend> <label for="nome">o seu Nome: </label> <input type="text" name="nome" id="nome" />... </fieldset> <fieldset> <legend>dados Profissionais</legend> <label for="profissao">sua profissão:</label> <input type="text" id="profissao" name="profissao" />

... </fieldset> <fieldset> <legend>informações de Contato</legend> <label for="email">e-mail: </label> <input type="text" id="email" name="email" />... </fieldset> </form> Ofieldsetpode ser usado para agrupar qualquer variedade de elementos input de formulários e é perfeitamente legal utilizarfieldsetsaninhados sempre que necessário, como mostrado na figuraa seguir. Outro tipo de agrupamento se dá por meio do uso do elemento optgroup, que possui finalidade semelhante ao fieldset, e agrupa os elementos options pertencentes ao elemento select. Cada optgroup recebe um atributo label que identifica o agrupamento criado. Exemplo <label for="instituto">qual a sua instituição?</label> <select id="instituto" name="instituto"> <optgroup label="rio Grande do Sul"> <option value="ifrs">ifrs</option> <option value="ifsul">ifsul</option> <option value="iffarroupilha">iffarroupilha</option> </optgroup> <optgroup label="santa Catarina"> <option value="ifsc">ifsc</option> <option value="ifc">ifc</option> </optgroup> <optgroup label="paraná"> <option value="ifpr">ifpr</option> </optgroup> </select>

Campos obrigatórios Repare que o formulário acima indica os campos obrigatórios apenas através da mudança de cor. Um usuário que não pode ver, não saberá quais campos são de preenchimento obrigatório. Uma solução para o caso de campos obrigatórios em formulários seria inserir um asterisco em forma de imagem ao lado de cada campo obrigatório, fornecendo uma descrição no atributo alt para esta imagem, que poderia ser campo obrigatório ou, simplesmente, obrigatório. Exemplo 1 <label for="nome">nome: <img src="images/icon_asterisk.gif" alt="obrigatório"/> </label> <input type=text name="nome" id="nome" /> Para quem enxerga, basta visualizar o asterisco para distinguir os campos obrigatórios. Com o leitor de tela, a informação do alt seria lida para o usuário. No caso do exemplo de código acima, o leitor iria informar algo do tipo: Campo de edição, nome, obrigatório. Outra solução é utilizar uma tagspan contendo a informação obrigatório, que será ocultada por CSSe, em seu lugar, inserimos a imagem de um asterisco. Exemplo 2 <label for="nome">nome: <span>obrigatório<span/> </label> <input type=text name="nome" id="nome" /> O único cuidado é ocultar o elemento através de técnicas que preservem a acessibilidade, ou seja, de forma que o conteúdo fique oculto visualmente, mas que continue sendo acessado

pelos leitores de tela. Repare nos mecanismos para ocultar elementos e seus efeitos na acessibilidade: CSS Efeito na tela Efeito na acessibilidade visibility:hidden; O elemento fica oculto, mas continua a ocupar o espaço que normalmente ocuparia O conteúdo é ignorado pelos leitores de tela display:none; height: 0; width: 0; overflow: hidden; text-indent: -999em; position: absolute; left: -999em; O elemento fica oculto e não ocupa espaço O elemento fica oculto e não ocupa espaço O conteúdo é movido para fora da tela, não sendo mais visível, mas links podem ser focalizados de maneira imprevisível O conteúdo é removido de sua posição, não ocupando espaço e é movido para fora da tela, ficando oculto O conteúdo é ignorado pelos leitores de tela O conteúdo é ignorado pelos leitores de tela Os leitores de tela acessam o conteúdo, mas somente texto e elementos inline Os leitores de tela acessam o conteúdo Alterações automáticas Quando campos ou elementos de um formulário receberem foco, não devem ser iniciadas alterações automáticas na página que confundam ou desorientem os usuários. Logo, as mudanças devem ocorrer através do acionamento de botões, permitindo que os usuários tenham total controle do formulário. Exemplo Correto <select id="cidade" name="cidade"> <option value="poa">porto Alegre</option> <option value="bh">belo Horizonte</option> <option value="rj">rio de Janeiro</option> <option value="sp">são Paulo</option> </select> <input type="submit" id="submit" value="enviar" />

ExemploIncorreto <select name="cidade" id="cidade" onchange="location = this.options[this.selectedind ex].value;"> <option value="poa">porto Alegre</option> <option value="bh">belo Horizonte</option> <option value="rj">rio de Janeiro</option> <option value="sp">são Paulo</option> </select> Botões de imagem Os botões de imagem são elementos input do tipo image (input type= image ). Para os botões de imagem que servem para o mesmo propósito do botão do tipo submit, deve ser fornecida uma descrição textual para o botão através do atributo alt, conforme o exemplo a seguir. <inputtype="image"name="entrar"src="entrar.jpg"alt="entrar" /> Já para outros tipos de botões (reset e button), é preciso substituir o botão pela imagem que se deseja utilizar através do CSS, já que o comportamento dos leitores de tela quanto ao atributo alt nesses tipos de botões é bastante variável. Nesse caso, para que o botão seja acessível, ele deve possuir um value descritivo, conforme o exemplo a seguir.

HTML CSS <inputtype="reset"name="limpar"value="limpar"class="btlimpar"/> input.btlimpar{ background:transparenturl(btlimpar.jpg) no-repeat left top; width:100px; height:47px; text-indent:-20000px; border:0; } Aviso de erro Quando um erro de entrada de dados for automaticamente detectado, seja pelo não preenchimento de campos obrigatórios, ou pelo preenchimento incorreto de algum campo, o item que apresenta erro deve ser identificado e o usuário deve ser informado sobre o erro por meio de texto. Após o envio das informações, caso exista algum campo incorreto, o mesmo deve receber o foco, e nele deverá conter uma mensagem informando claramente ao usuário o real motivo do problema, para que esse possa ser resolvido, permitindo o envio dos dados. Exemplo O usuário envia o formulário e deixa de preencher campos obrigatórios ou preenche algum campo de maneira incorreta. O foco retorna ao início do formulário contendo o aviso de erro e links (âncoras) para os campos do formulário que apresentaramerro.abaixo dos avisos, encontram-se os campos de formulário que contiveram erro de preenchimento e, também, um link que permite ao usuário expandir os demais campos do formulário.

CAPCHA O CAPCHA é um teste interativo humano, completamente automatizado para diferenciar computadores de seres humanos. Os CAPTCHAS comuns fazem uso de imagens que expressam símbolos e caracteres. Esse tipo de CAPTCHA não é interpretado e lido pelos softwares leitores de tela. Logo, esse recurso somente deverá ser utilizado em casos de extrema necessidade, e, quando utilizado, deverá ser disponibilizada em forma alternativa, podendo ser de perguntas de interpretação ou testes matemáticos que só poderão ser respondidas por seres humanos. Essas perguntas devem ser simples, permitindo que possam ser respondidas por variados tipos de usuários, de diferentes culturas e níveis de instrução.

Exemplo <form action="action.php" method="post"> <fieldset> <legend>captcha</legend> <label for="pergunta">escreva por extenso quanto é dois mais três.</label> <input type="text" id="pergunta" name="pergunta" /> <input type="submit" name="enviar" value="enviar!" /> </fieldset> </form> Outros exemplos

Este manual utilizou como referência os seguintes documentos: e-mag Modelo de Acessibilidade em Governo Eletrônico. Disponível em: <http://emag.governoeletronico.gov.br/emag/> Site do Maujor.Construindo formulários acessíveis. Disponível em: <http://www.maujor.com/tutorial/formac-a.php> THATCHER, Jim (Org.).Web Accessibility Web Standards and Regulatory Compliance.New York: FriendsofED, 2006.