Anteriormente mencionamos en nuestro blog la importancia de los Web Standards en nuestra filosofía de diseño y desarrollo de sitios. Por eso, vamos a dedicar una serie de artículos a explicar distintos aspectos de los estándares.

Pero antes de adentrarnos en cuestiones técnicas, es mejor repasar como fueron evolucionando los estándares para entender mejor el motivo de ciertas frustraciones que pueden surgir al crear sitios siguiendo al pie de la letra las especificaciones de la W3C.

La World Wide Web (WWW o simplemente web) nace a principios de la década del 90. En esta época no existía ningun organismo que controle los estándares aunque un documento titulado “HTML Tags” (denominado por algunos como HTML 1.0) describe los 22 elementos o tags que podían usarse para escribir archivos html. El lenguaje entonces era muy simple ya que sólo se permitía texto, enlaces y algunos elementos como títulos y listas.

Con el paso del tiempo el lenguaje fue evolucionando a la vez que surgían nuevos navegadores que aprovechaban las ventajas de las nuevas versiones de HTML. A mediados de los 90, la web se vuelve popular debido a la gran cobertura en medios masivos de comunicación y comienza la “Guerra de los navegadores” entre Netscape (quien dominaba el mercado) y Microsoft.

En esta época el desarrollo de los navegadores tomo un ritmo vertiginoso. Lamentablemente tanto Netscape como Microsoft priorizaron la inclusión de nuevas funciones a corregir bugs o a seguir los estándares. Como resultado, muchos sitios empezaron a incluir los famosos íconos de “Optimizado para Netscape” y “Optimizado para Internet Explorer”.

Finalmente en Septiembre de 1997 Microsoft lanza Internet Explorer 4 y empieza a dominar el mercado, en parte por estar incluído en Windows 98, pero también debido a que era un navegador con mejor (aunque incompleto) soporte para hojas de estilo (CSS) y HTML. Pero recién con la salida de Internet Explorer 6 en Agosto de 2001 Microsoft corrige su motor de CSS para interpretar las propiedades width, padding y border como lo define la especificación de CSS 2.1 aunque sigue teniendo bugs, incompatibilidades y un soporte incompleto de HTML y CSS.

Hasta este momento, era muy difícil diseñar sitios siguiendo los estándares que sean compatibles con varios navegadores. Por lo general se recurría hacks de CSS aprovechando errores de lectura de Internet Explorer (lo que hacía que las hojas de estilo no cumplan con el estándar) o en el más común de los casos, se usaban tablas para armar la estructura del sitio que si bien podían crearse usando código HTML válido, va en contra de el espíritu de la especificación de HTML (esto será explicado más en detalle en un próximo artículo).

Por suerte, la comunidad de desarrolladores y diseñadores de sitios web lanzaron campañas como CSS Zen Garden y CSS Reboot entre otras promoviendo métodos de codificación usando estándares, y a la vez lanzaron tests de CSS como ACID2 para que los programadores de navegadores puedan probar la compatibilidad con CSS.

The proportion of california schools making ayp dropped from 65 percent find in 2004 to 56 percent this past academic year