INTRODUCCIÓN

Recientemente e inevitablemente, después de llevar muchos años empezando en esto del diseño y desarrollo web me he visto obligado ante mi mismo y (mi jefe de proyecto) a dar un serio repaso a los formularios. Además de este modo, haciendo un repaso a fondo, pueden entenderse mejor aspectos vitales para mejorar la accesibilidad y usabilidad de estos complicados elementos dentro de las aplicaciones web.
Para empezar me he mirado unos cuantos foros, he leído unos cuantos artículos y finalmente me leído o medio leído un par de libros. Todo para hacer formularios sí señor y pese a todo me queda muchísimo por aprender.
Publicaré los post en varias entregas porque es imposible de otro modo abarcar todo el contenido.
Antes de que se me pase voy a citar las fuentes no como hace Joaquín Reyes parodiando a Bunbury, para que no me llamen plagiador.
La mayoría del texto es una traducción libre del inglés del libro “The Art & Science of Css” escrito por Cameron Adams, Jina Bolton, David Johnson, Steve Smith (imagino que no será el magistral batería de Vital Information) y Jonathan Snook, editado por Sitepoint, que por supuesto recomiendo fervientemente.

Espero que no me metan en la cárcel por este ejercicio divulgativo sin ánimo de lucro.
Antes de seguir le recomiendo a todo el que no quiera desesperar haciendo formularios que pagando hay servicios que hacen este trabajo muy rápido y efectivamente. Por ejemplo.
http://wufoo.com/
http://www.flovv.com/ (este es gratis)
http://www3.formassembly.com/

Si tus ganas de aprender persisten, adelante. Siempre es mejor conocer bien la teoría y después usar las herramientas que te simplifican el trabajo. Si quieres personalizar al máximo un formulario, al final te va a tocar picar código, eso seguro.

Programar y hacer funcionar un formulario es harina de otro costal que se escapa un poco a mis limitados conocimientos, intentaré echar algo de luz al tema pero dado que no soy programador no sé hasta dónde podré llegar. Lo que sí sé es que se puede programar en java, en php, en .net y en cualquier lenguaje de programación que se te ocurra y que tu servidor depure. En la actualidad, la mayoría usaremos php porque es gratis. Los mecanismos, en teoría son los mismos siempre: recoger los valores de campos y a partir de ahí pintar mensajes de éxito, enviar la información por correo electrónico, guardar la información en bases de datos… y todas las funcionalidades que se nos puedan ocurrir.

CONOCIENDO LOS FORMULARIOS

Los formularios vienen siendo uno de los aspectos más complicados de afrontar en el desarrollo web a la hora de formatear su código y su grafismo. Los formularios derivan de los sistemas operativos propietarios, lo cual impone una gran dificultad a la hora de diseñar (por ejemplo no se verá igual un formulario en Mac que en Xp o Vista, el aspecto de los elementos los impone el SO)
Antes de diseñar, como ocurre con frecuencia en el mundo del desarrollo web debemos crear un código sólido que nos de un entorno al que aplicar los estilos. De este modo podemos pulir los aspectos básicos respecto a su estructura semántica y usabilidad así como la correcta validación xhtml del código.
Hacer formularios es uno de los aspectos que más energía nos va a suponer a la hora de revisar la accesibilidad. Aunque representan algunas de las interacciones más complejas que va a experimentar el usuario en la mayoría de los casos las relaciones y asociaciones sólo se representan de forma visual, acercando los elementos a sus etiquetas, o por sus colores de fondo o el color de los bordes . Esto es un problema ya que los lectores de pantalla no van a apreciar esta información cromática. Por eso al crear formularios hay que llevar a cabo un meticuloso etiquetado.
Se debe usar apropiadamente las etiquetas “label” y “legend” y desde luego no recurrir a la tablas para maquetarlos.
Mi consejo personal es que con los formularios no valen bocetos en Photoshop, ya que te va a suponer un gran esfuerzo y no te aseguras cómo se verá finalmente en toda la ristra de navegadores que nos toca usar para validar (en mi caso, mínimo me toca que se vea todo bien en Ie6, 7 y Firefox) por eso es casi preferible hacer un HTML y currártelo en modo seguro, es decir, montándolo tal y como irá a producción. Además si te va a tocar programarlo es mejor así para hacer las pruebas pertinentes. Esto es un consejo y como tal, si quieres lo tomas y si no lo dejas, cada uno tiene su forma de trabajar.