Nuevo atributo ´form´ para formularios en HTML5

Nuevo atributo ´form´ para formularios en HTML5

En este artículo me gustaría hablar de una novedad bastante curiosa de los formularios en HTML5 y en concreto del atributo ´form´.

Con el atributo ´form´ en HTML podremos tener etiquetas de formulario fuera de estos y plenamente integrados en el formulario, e incluso elementos dentro de un formulario que pasen la información y actúen en otro formulario relacionándolo mediante el atributo ´form´.

Es decir, en cualquier elemento de formulario ( input, select, texarea ) podemos añadir el atributo form=”formulario1”; una vez hecho esto, el elemento quedará enlazado al formulario cuyo identificador ( id=”formulario01”) sea igual al valor que pongamos dentro del atributo.

Esta asociación está por encima del flujo normal de la página y se puede realizar en elementos que estén incluso dentro de otro formulario en la misma página (incluidos los input de tipo submit o botones de envío).

Con este atributo se tendrá mayor libertad a la hora de desarrollar formularios ya que separará totalmente la estructura y contenido del formulario del propio flujo de la página. Quizás en muchos casos no tenga mucho sentido, pero procurar tenerlo en cuenta ya que puede ser una herramienta bastante potente.

De momento el soporte de este atributo es poco y además en algunos navegadores no está muy claro, pero es una opción a tener en cuenta en próximas versiones.

Sobretodo siempre se ha de tener en cuenta el tipo de público que visita vuestra web, evitando usar este tipo de elementos si tenéis muchas visitas de usuarios usando Internet Explorer; y si además tienen desactivado el javascript estáis perdidos.

  • Opera 9.5+ (Soporte Total)
  • Safari 5.1+ (Soportado, es posible que el soporte no sea total)
  • Firefox 4+ (Soporte parcial)
  • Chrome 10+ (Soporte parcial)
  • IE (NO Soportado)

Aquí os dejo un enlace a un artículo en inglés en el cual tratan el tema y enlazan un ejemplo para probar.

http://www.impressivewebs.com/html5-form-attribute/