test support polyfill online html5test chrome benchmark html5 cross-browser w3c-validation

html5 - support - HTML 5-Adopción temprana donde sea posible: ¿buena o mala?



polyfill flexbox (7)

¡Buena pregunta!

En resumen: depende de tu contexto, y de la tolerancia al riesgo :)

Ligeramente más largo:

  • Creo que siempre es bueno empujar el sobre de la adopción temprana de la tecnología. Le brinda una ventaja sobre los que llegan tarde en el mundo comercial, y también le brinda mucha más influencia para influir en la tecnología a medida que surge.

  • Si no desea tener que volver a escribir el código, o actualizar su fuente, la adopción anticipada puede no ser para usted. Es perfectamente respetable querer escribir código sólido y estable que nunca tenga que cambiar, pero depende totalmente de usted (y de su contexto empresarial)

Esta pregunta se inspiró un poco en esta pregunta , en la que la respuesta más popular recomendaba usar una función de HTML 5. Sin duda, me pareció un buen método, pero me hizo sentir curiosidad por usar características de una futura especificación en general.

HTML 5 ofrece muchas mejoras interesantes, muchas de las cuales se pueden usar sin causar problemas en los navegadores actuales.

Algunos ejemplos:

// new, simple HTML5 doctype (puts browsers in standards mode) <!doctype HTML> // new input types, for easy, generic client side validation <input type="email" name="emailAddress"/> <input type="number" name="userid"/> <input type="date" name="dateOfBirth"/> // new "required" attribute indicates that a field is required <input type="text" name="userName" required="true"/> // new ''data-'' prefixed attributes // for easy insertion of js-accessible metadata in dynamic pages <div data-price="33.23"> <!-- --> </div> <button data-item-id="93024">Add Item</button>

Muchas de estas nuevas funciones están diseñadas para hacer posible que los navegadores validen automáticamente los formularios, y les brinden mejores entradas (por ejemplo, un selector de fecha). Algunas son convenientes y parecen ser una buena manera de prepararse para el futuro.

Actualmente no rompen nada (por lo que puedo decir) en los navegadores actuales y permiten un código genérico y limpio del lado del cliente.

Sin embargo, aunque todos ellos son válidos en HTML 5, NO son válidos para HTML 4, y HTML 5 todavía es un borrador en este momento.

¿Es una buena idea seguir adelante y usar estas características temprano?

¿Hay problemas de implementación del navegador con ellos que no me he dado cuenta?

¿Deberíamos estar desarrollando páginas web que utilicen las características del borrador de HTML 5?


Hay varias cosas a considerar:

  1. Primero, la validación no significa mucho, porque una página HTML puede ser muy válida pero de mala creación, inaccesible, etc. Consulte Diga no a los iconos "Valido HTML" y Envíe XHTML como texto / html Considerado perjudicial (en referencia a la pruebas de hobo-web mencionadas en otra respuesta)
  2. Dado esto, recomiendo usar el nuevo DOCTYPE: la única razón para tenerlo en HTML5 es que es la cosa más pequeña que activa el modo estándar en los navegadores, así que si quieres el modo estándar, hazlo; tiene poca o ninguna razón para usar otro DOCTYPE detallado, detallado y propenso a errores
  3. En cuanto a las mejoras de formularios, puede usar la biblioteca JS de webforms2 Weston Ruter para llevarla a navegadores que no lo saben
  4. y finalmente, sobre los atributos de data-* , a) funciona en todos los navegadores (siempre que use getAttribute() ), b) es mejor que abusar del title o class atributos de class yc) no le molestará con la validación como dijimos anteriormente, la validación no es tan importante (por supuesto que lo es, pero no importa que su página no sea válida si los errores de validez son intencionados; y ya puede usar la validación de HTML5 en el validador del W3C, así que ... .); así que tampoco hay una razón real para no usarlos.

No utilice las nuevas funciones antes de poder probarlas en al menos un navegador. Por ejemplo, si usa las funciones de formulario ahora, asegúrese de probar en Opera. De lo contrario, probablemente harás más daño que bien al contribuir a un legado envenenado.

Cuando una función ya está implementada en los navegadores y está probando con esos navegadores, por favor, use las nuevas funciones.

Véase también una respuesta anterior .


Si su página depende en gran medida de la ubicación de los motores de búsqueda, puede valer la pena considerar que algunos motores dan prioridad a la validación de HTML (Fuente: http://www.hobo-web.co.uk/seo-blog/index.php/official-google-prefers-valid-html-css/ ).

Además, vale la pena considerar que confiar en los nuevos elementos de entrada de fecha (como los de Opera, posiblemente otros) permite una mayor comodidad por parte del desarrollador, por lo general excluye la inclusión de controles de Javascript más complejos que podrían servir mejor para los navegadores más antiguos ( normalmente retrocediendo a un campo de entrada de texto simple).

Por supuesto, y como siempre, no confíe en las verificaciones del navegador y valide todos los del servidor de entrada.


Usaría HTML 5 solo por diversión y aprendizaje, pero definitivamente no tocaría ninguno de mi código de producción (código existente) con este nuevo estándar, al menos por ahora y hasta que tenga una razón válida para respaldar este movimiento.


Ver principio de robustez :

En RFC 761 (Protocolo de control de transmisión, 1980), el científico informático estadounidense Jon Postel resumió las comunicaciones anteriores de los criterios de interoperabilidad deseados para el Protocolo de Internet (cf. IEN 111 1 , RFC 760) de la siguiente manera:

Las implementaciones de TCP deben seguir un principio general de robustez: ser conservador en lo que haces, ser liberal en lo que aceptas de los demás .

Entonces, imho, no.


No implementaré nuevas características de HTML hasta que al menos tengan soporte de todos los navegadores principales.

A los clientes no les importa si su página es válida, les importa mucho más si funciona en todos los navegadores. Incluso si luchamos por implementar los últimos estándares, todavía habrá clientes y compañías que nunca abandonarán su IE6, e IE6 estará en la lista de requisitos de su navegador por un momento.

Los nuevos tipos de formularios son bienvenidos, sin embargo, los formularios deben verificarse en el lado del servidor.

Pasar a HTML5 los documentos existentes requerirá mucho esfuerzo y adaptación y, en mi estimación, no ocurrirá de la noche a la mañana. Espere al menos 3 años hasta que llegue a la corriente principal.