Formularis usables i accessibles

Quan es dissenyen formularis per a web, es essencial seguir un procés per el qual mitjançant diferents passos s'aconsegueixi la construcció de sistemes usables i accessibles. Abans de res, cal incloure una fase d'anàlisi que ajudi a determinar allò que es necessita i quins són els medis que s'utilitzaran per aconseguir els objectius.

Fase d'anàlisi

En aquesta fase d'anàlisi es desenvolupa, segons els requeriments, un model lògic dels sistema de recol·lecció d'informació que inclou:

Conèixer quin és l'objectiu bàsic del formulari, a qui va dirigit i com es vol retornar la informació, s'aconseguirà un panorama general del disseny funcional del formulari, els camps necessaris, la programació a utilitzar, la forma d'emmagatzemament i de lliurament de la informació als encarregats de recopilar-la i analitzar-la.

Construcció del formulari

En la construcció d'un formulari, tal com hem vist en la pràctica anterior, no hi ha cap ciència oculta, es tracta només de sentit comú. Els formularis han de ser omplerts fàcilment pels usuaris, per això requereixen com a mínim:

Elements d'un formulari

El dissenyador, al composar un formulari, es troba davant de moltes i molt diverses opcions de presentar la informació: camps de text, llistes, llistes desplegables, caselles de selecció, botons d'opció (radio buttons), entre d'altres opcions. Però cal tenir en compte en la construcció del formulari, que no tots els elements serveixen per a tot i que hi ha elements que són més convenients que d'altres per a certes funcions. Per exemple:

Exemple de botons d'opció i caselles de selecció

Els botons d'opció, radio buttons, són eficients ja que permeten detectar immediatament les opcions disponibles, encara que es recomana que el nombre d'ítems a seleccionar no sigui massa gran, de dos a sis.

La característica essencial dels botons d'opció és que només permeten seleccionar una opció cada vegada. Per la qual cosa, si es vol deixar que l'usuari tingui la possibilitat de múltiples opcions s'hauran d'utilitzar les caselles de selecció.

Els botons posseeixen funcions restringides, no han de ser usats per altra cosa que no sigui el disparador de l'acció del formulari o la funció de neteja, reset, és desaconsellable usar-los com enllaços a altres documents. Generalment, un formulari ple de botons és molt poc amigable.

Quins elements ha de tenir un formulari per a ser accessible?

Tots els elements d'un formulari, camps de text, botons d'opció, caselles de selecció, etc., per tal que siguin accessibles han de tenir associat:

  1. Un fieldset. És un element utilitzat per agrupar camps, facilita la comprensió i enteniment dels formularis llargs. El fieldset conté una etiqueta legend que dóna títol a l'agrupació.
  2. Un label descriptiu. Una etiqueta que envolta el camp i l'anomena. Cal tenir en compte que sempre ha d'estar ubicat a l'esquerra del camp que descriu, excepte en el cas dels botons d'opció o caselles de verificació, on pot situar-se a la dreta de l'element.
    <fieldset> <legend>Introducció de dades</legend>
       <fieldset><legend>Dades personals</legend>
       <p>
       <label>Nom: </label><input name="nom"/>  
       <label>Cognoms: </label><input name="cognom"/>
       </p>
       <p>
       <label>Adreça electrònica: </label><input name="mail"/>
       <label>Contrasenya</label><input name="senya"type="password"/>
       </p>
       </fieldset>
    </fieldset>
    
  3. Un accesskey. Una drecera del teclat per poder accedir al camp independentment del dispositiu que s'utilitzi, per exemple, per poder accedir des del teclat. Està inclòs com un atribut de l'etiqueta label.
    <fieldset> <legend>Introducció de dades</legend>
    <fieldset><legend>Dades personals</legend>
    <p>
    <label accesskey="N">Nom: </label>
    <input name="nom"/>
    <label accesskey="C">Cognoms: </label>
    <input name="cognom"/>
    </p>
    <p>
    <label accesskey="M">Adreça electrònica: 
    </label><input name="mail" /> 
    <label accesskey="P">Contrasenya</label>
    <input name="senya" type="password" />
    </p>
    </fieldset>
    </fieldset>
    
  4. Un tabindex, és una variable inclosa dintre de l'etiqueta label que indica l'ordre que seguirà la tabulació.
    <fieldset><legend>Introducció de dades</legend>
    <fieldset><legend>Dades personals</legend>
    <p>
    <label accesskey="N" tabindex="1">Nom: </label>
    <input name="nom"/>
    <label accesskey="C" tabindex="2">Cognoms: </label>
    <input name="cognom"/>
    </p>
    <p>
    <label accesskey="M" tabindex="3">Adreça electrònica: </label>
    <input name="mail" /> 
    <label accesskey="P" tabindex="4">Contrasenya</label>
    <input name="senya" type="password" />
    </p>
    </fieldset>
    </fieldset>
    

    Aquest atribut no és correcte si es treballa amb XHTML 1.0 Strict.

  5. Un submit button que no utilitzi JavaScript, tot i que pot ser que en alguns navegadors no funcioni correctament.
    <fieldset>
    <p>
    <input name="submit" type="submit" value="enviar" />
    </p>
    </fieldset>
    

Veieu el codi resultant del formulari i, seguidament, el formulari en acció.

<form method="post" action="mailto:identificador@xtec.cat">
<fieldset><legend>Formulari accessible</legend>
   <fieldset><legend>Introducció de dades</legend>
      <fieldset><legend>Dades personals</legend>
      <p class="form">
      <label class="align" accesskey="N" tabindex="1">Nom: </label>
      <input name="nom"/>
      <label class="align" accesskey="C" tabindex="2">Cognoms: </label><input name="cognom"/>
      </p>
      <p class="form">
      <label class="align" accesskey="M" tabindex="3">Adreça electrònica: </label><input name="mail" /> 
      <label class="align" accesskey="P" tabindex="4">Contrasenya</label><input name="senya"    type="password" />
      </p>
   </fieldset>
</fieldset>
   <fieldset class="button">
   <p>
   <input name="submit" type="submit" value="enviar" />
   </p>
   </fieldset>
</fieldset>
</form>
Formulari accessible
Introducció de dades
Dades personals

Finalment, la recomanació és usar els formularis amb prudència, poden ser una arma molt poderosa per la recol·lecció de dades estadístiques, però en molts casos als usuaris no els interessa omplir formularis interminables o complicats.

Tornar a l'inici de la pràctica

Recursos

Valid XHTML 1.0 Strict Valid CSS Level Double-A conformance icon, 
          W3C-WAI Web Content Accessibility Guidelines 1.0