DHTML

La evolución en los lenguajes de marcado ha provocado que las funcionalidades básicas del HTML sean insuficientes en muchos sentidos, por ejemplo en lo que respecta a la presentación de documentos y la posibilidad de interacción entre los usuarios y las páginas una vez descargadas en el navegador. Precisamente, el DHTML (HTML Dinámico) ofrece a los desarrolladores de sedes web la posibilidad de presentar sus materiales de manera más precisa, y también unas interfaces mucho más atractivas y personalizadas que hasta ahora.

Está basado en un concepto muy simple, pero claro: transformar las páginas estáticas de HTML en objetos que sean programables, lo cual permite introducir modificaciones en el momento de manipular las páginas. Es decir, con el DHTML puede alterarse la presentación de una página, incluso después de haber sido descargada por el navegador. Gran parte de los contenidos de DHTML está especificada en HTML 4.0 y puede hacer que las páginas web se comporten como verdaderas producciones multimedia.

Contenido complementario

No hay, sin embargo, una especificación única para DHTML, dado que se trata en realidad de una combinación de diferentes tecnologías. Netscape y Microsoft han especificado sus propias definiciones, si bien en el año 1997, cuando el W3C emitió una serie de especificaciones preliminares que englobaban las hojas de estilo en cascada (CSS), el posicionamiento y el DOM (Document Object Model) se comprometieron a un acuerdo de interoperabilidad; según este acuerdo, los navegadores de las dos compañías tenían que cumplir las especificaciones finales del W3C. De momento, hasta que esto no llegue a ser una realidad, hay que diseñar de manera diferente para los dos navegadores y afrontar las dificultades que comportan los problemas de compatibilidades.

En esta guerra comercial, los navegadores de Netscape soportan el posicionamiento mediante la tecnología de capas, así como por las coordenadas de posicionamiento emitidas por el W3C. Microsoft, por su parte, con la aparición de su navegador Internet Explorer 4, presentó los Scriptlets, tecnología que permite desarrollar componentes basados en DHTML que pueden utilizarse como objetos COM (Common Object Model), pero que necesitan un código específico que, de momento, no es parte integrante de los navegadores de Netscape.

DHTML integra, por lo tanto, diferentes aspectos que será preciso definir. Éstos son:

  • DOM (Document Object Model): se trata de una especificación que facilita describir la estructura y la composición de una página, sin tener que hacer referencia a su contenido. La idea básica surge en Netscape Navigator, que permite alterar determinados aspectos de la página web en cuanto a presentación, accediendo a algunos objetos JavaScript llamados a partir de diferentes elementos HTML de la página. DOM avanza en este sentido, porque ya puede hacerse esto independientemente de JavaScript y permite el uso de otros lenguajes de macros, como Java, ActiveX o plug-ins, por ejemplo.

  • De este modo, un elemento, como por ejemplo el encabezamiento de una página, puede tener un nombre concreto y es posible proporcionarle unos atributos de estilo, como tipografía o color del texto, y ser llamado por su nombre en un pequeño programa o script incluido en la propia página. Este encabezamiento, y cualquier otro elemento de la página, puede cambiar como resultado de una acción, por ejemplo que el puntero le pase por encima. También puede hacer que una imagen se mueva de un sitio a otro, independientemente de su posición originaria, con una acción de arrastre del ratón.

    La gran ventaja que representa esta tecnología se encuentra en que no hace falta un tiempo de respuesta, ya que cuando se envía la página solicitada, ésta ya lleva todas las variables de los elementos en su cuerpo de página, de manera que estas variaciones pueden considerarse claramente independientes de las propiedades del objeto.

Artículo recomendado
  • Hojas de estilo: lo que hacen es describir las características de estilo general de las páginas, y en concreto de cada una de sus partes o elementos. Su gran aportación es clara: permiten conferir a los documentos un estilo homogéneo y propio que se visualizará del mismo modo para todas las páginas que formen la sede web. Esto nos permitirá hacer cambios globales de estilo en las páginas, y no de una a una como hasta ahora con HTML.
  • Si tenemos, por ejemplo, una sede con más de cien páginas web y decidimos llevar a cabo un cambio de estilo general, lo que se deberá hacer es llamar página por página y cambiar los atributos de las etiquetas elemento por elemento. Esto es realmente muy pesado y monótono. Por ello, las hojas de estilo en forma de cascada permiten hacer estos cambios una sola vez para todas las páginas de manera uniforme. Algo así es posible porque pueden especificarse diferentes niveles predefinidos de procedencia dentro de una página o un grupo de páginas que estén relacionadas entre sí; de este modo, el cambio efectuado en un nivel X (por ejemplo, que los encabezamientos pasen de ser de color negro a azul) se pueda modificar y especificar una sola vez para el objeto que se referencia en los encabezamientos.

  • Capas (layers): permiten crear documentos HTML superpuestos. Para hacer esto, se definen secciones rectangulares, categorizadas en un sistema de coordenadas tridimensionales, y se añade el código HTML de cada una de ellas independientemente. De esta manera, la distribución de diferentes capas (layering) por la pantalla del navegador permite incluir una elevada sintaxis interactiva. Pueden programarse como eventos, y de este modo definirse como visibles, pero no visibles hasta que no sucede una acción determinada (moverlas por la pantalla, etc.). El problema es, de nuevo, la incompatibilidad que presentan las directivas de Netscape y Microsoft, que se espera solventar con el análisis del comité de trabajo del W3C.
  • Niveles de programación: permiten aplicar lenguajes de macros como JavaScript o VBScript, o applets de Java, que tienen capacidades para modificar el DOM, y por ello pueden cambiar el contenido y el aspecto de una página.
  • Fuentes dinámicas: Netscape incluye la posibilidad de añadir fuentes dinámicas como parte del DHTML, con lo que pueden hacerse llamamientos a ficheros padre con la fuente específica que se quiere utilizar. De esta manera, si un diseñador de sedes web desea utilizar una fuente que sabe que es difícil que tenga en cuenta la mayoría de los sistemas por defecto, puede incluirla de esta manera y asegurarse así el control total en cuanto a la presentación tipográfica de la sede web. La forma en que se verán las páginas web una vez publicadas es uno de los quebraderos de cabeza más importantes, que hasta ahora sólo ha podido solucionarse con la utilización de tipografías comunes, como Arial, Helvética, Courier, etc., o mediante un recurso no muy positivo para este tipo de configuración: las imágenes. De este modo, las fuentes específicas se cargan junto con la página, así que la elección de la fuente ya no depende del navegador como sucedía hasta ahora.

Como podemos ver, el DHTML parece tener muchas ventajas con respecto al HTML, pero todavía hace falta que se perfilen los trabajos de estandarización emitidos por el W3C para que las incompatibilidades de programación entre Netscape y Microsoft dejen de ser un verdadero problema. De todos modos, la pregunta es clara: ¿hay que aprender DHTML? La respuesta la tienen los webmasters y los diseñadores de sedes web, y desde nuestra óptica como tales diremos que sólo es preciso ver las posibilidades de creación, gestión y mantenimiento para decir rotundamente que sí.

Arriba