|
HTML. Manual de ReferenciaEsta es una versión preliminar del manual en un solo documento, está previsto añadir algunos ejemplos, definir mejor la estructura y corregir los posibles errores. Encontrará la última versión del manual en el URL: http://www.ivia.es/htmlref/. Última modificación: 24/05/1996
Contenidos
HTML 2.0El HTML no es más que una aplicación del SGML (Standard Generalized Markup Language), un sistema para definir tipos de documentos estructurados y lenguajes de marcas para representar esos mismos documentos. El término HTML se suele referir a ambas cosas, tanto al tipo de documento como al lenguaje de marcas. En realidad aún no existe un estándar del HTML en Internet, ya que existen tres revisiones o niveles de estandarización que aún no han sido aceptadas: la versión 1.0, que en realidad no existe como estándar ya que nunca se hizo una especificación formal, la 2.0, que es un estándar de hecho, aunque todavía está en la etapa de propuesta de estándar documentada en el RFC-1866 de noviembre de 1995. El siguiente nivel, el HTML 3.0, está en una etapa experimental, aunque muchos de los visores aceptan algunas de las extensiones propuestas. En este apartado comentaremos la especificación del HTML 2.0 tal y como se describe en el RFC-1866. En el punto siguiente hablaremos de algunas de las propuestas de ampliación para el HTML 3.0 y algunas extensiones soportadas por algunos de los visores.
GeneralidadesAntes de comenzar, comentaremos algo de la terminología necesaria para el resto de la descripción. La definición del HTML en SGML incluida en el estándar resulta demasiado compleja para tratarla aquí, ya que es una descripción formal basada en la teoría de lenguajes. Nos limitaremos a una aproximación informal al lenguaje, aunque siguiendo el esquema empleado en el estándar. Dividiremos la descripción del lenguaje en varias partes:
Componentes LéxicosComenzamos nuestra descripción del HTML definiendo los componentes léxicos del lenguaje, es decir, las distintas entidades o elementos que pueden emplearse en los documentos.
CaracteresCada documento escrito en HTML puede emplear un juego de caracteres distinto, como veremos más adelante. De cualquier modo, todas las marcas se pueden escribir usando el ISO-646, el mismo juego de caracteres aceptado por los lectores de correo. Cualquier cadena de caracteres imprimibles que no represente un marcado se representa literalmente, aunque los espacios y tabuladores se reducen a un solo carácter cuando no están dentro de un bloque preformateado. Para reducir los documentos a ASCII de 7 bits y representar los caracteres empleados para marcar el texto se definen dos mecanismos de referencia:
Aunque en algunos casos se puede omitir el punto y coma final, es recomendable ponerlo para evitar errores. De igual forma, el carácter & se representa a sí mismo si no va seguido de # o de una letra, aunque siempre es preferible usar el código por la misma razón que antes.
MarcasLas marcas delimitan elementos de un documento como cabeceras, párrafos, etc. La mayoría de marcas constan de una marca inicial, que da el nombre y atributos del elemento, seguida del contenido y una marca final. Las marcas iniciales se escriben entre los símbolos "<" y ">" (menor y mayor) y las finales entre "</" y ">" (menor barra y mayor). Por ejemplo, <H1>Contenido</H1>, indica que "Contenido" es una cabecera de nivel uno. Algunos elementos sólo tienen una marca inicial (por ejemplo la marca <HR> que representa una línea horizontal) y otros, aunque disponen de ambas, se suelen expresar sólo con la inicial. El contenido de un elemento es una secuencia de cadenas de caracteres y puede incluir elementos anidados, excepto en el caso de los anclajes, que no pueden incluir otros elementos (pero si estar incluidos en otros).
NombresLos nombres consisten en una letra seguida de letras, dígitos, puntos o guiones. Los ejemplos H1 y HR anteriores son ejemplos de nombres. La longitud de un nombre esta limitada a 72 caracteres en la definición del HTML. Los nombres de elementos y atributos no distinguen entre mayúsculas y minúsculas, pero los nombres de entidades (la representación alternativa de los caracteres) sí. En las marcas, el nombre del elemento debe comenzar inmediatamente después del <.
AtributosCuando una marca inicial admite atributos, éstos se escriben a continuación del nombre del elemento. Generalmente los atributos tienen la forma nombre, signo igual, valor del atributo aunque en algunos casos basta con el nombre del atributo. Se pueden poner espacios en blanco antes y después del signo igual. El valor de un atributo puede ser:
La longitud del valor de un atributo no puede superar los 1024 caracteres.
ComentariosPara incluir comentarios en HTML se emplea la declaración de comentarios. Una declaración de comentarios comienza con <!, le siguen uno o varios comentarios y termina con >. Cada comentario comienza con -- e incluye todo el texto hasta la siguiente aparición de -- . Dentro de una declaración de comentarios, se pueden poner espacios en blanco después de cada uno de ellos, pero no antes del primero. Toda la declaración del comentario se ignora.
Identificación del Nivel HTML de un DocumentoPara identificar un documento como HTML que sigue el estándar 2.0, cada documento debe comenzar con la siguiente declaración:
Existen más identificadores que especifican otros detalles, por ejemplo si el documento contiene formularios. Este mecanismo también puede ser empleado por los visores para reconocer otros tipos de documentos. Estructura de los DocumentosLos documentos en formato HTML son un conjunto de elementos anidados. En el nivel más alto nos encontramos el elemento HTML (marca inicial <HTML> y final </HTML>) que consta de dos partes: cabecera y cuerpo. La cabecera se emplea para proporcionar información acerca del documento, mientras que el cuerpo contiene el texto de la página, es decir, la información que se va a presentar al usuario. En el cuerpo se pueden incluir todo tipo de elementos y marcas. No es mala idea diseñarse una plantilla para desarrollar siempre a partir de ella. Además del esqueleto de la página (marcas de texto HTML, cabecera y cuerpo) podemos incluir en ella otras informaciones que siempre queramos que aparezcan (tanto comentarios como elementos del cuerpo o la cabecera). Prácticamente todos lo editores específicos permiten el uso de plantillas y macros para introducir información útil, como por ejemplo la fecha de la última modificación. La siguiente página puede ser un buen punto de partida:
Los datos adicionales dependerán del autor. La cabecera y pie pueden ser útiles para dar a todas las páginas el mismo aspecto, aunque dependerán de que la persona que escribe las páginas lo considere necesario. Entraremos ahora en la descripción de los elementos que pueden aparecer en la cabecera y el cuerpo.
CabeceraLa cabecera es una colección de información acerca del documento. Las marcas de principio y fin son <HEAD> y </HEAD>. La cabecera puede contener los siguientes datos, sin importar el orden en que aparezcan:
CuerpoComo ya hemos dicho, el cuerpo contiene el texto de la página que se va a presentar al usuario. Las marcas de principio y fin del cuerpo son <BODY> y </BODY> respectivamente. A continuación describiremos los elementos que pueden aparecer en el cuerpo, clasificados por categorías.
EncabezadosLos encabezados se emplean para dividir los documentos en secciones, o más concretamente para marcar los títulos de esas secciones. Las marcas son del tipo <H#>Título</H#>, donde # puede ser un numero cualquiera entre 1 y 6. Aunque el estándar no lo especifica, es recomendable usar los niveles en orden, es decir, después de un encabezado de nivel uno deberemos usar encabezados de nivel dos para las subsecciones y no saltar directamente al tres o al cuatro, por ejemplo. La representación de los encabezados depende del visor, generalmente se representan en negrita y van cambiando de tamaño y espacios antes y después, de más a menos, en función del nivel (el nivel uno es el mayor). Ejemplo:
Definición de BloquesPara definir y separar bloques de texto se emplea una serie de marcas que definen párrafos, texto preformateado o bloques con un significado especial como direcciones o citas. También, y aunque no son propiamente para definir bloques, hablamos en este punto de dos marcas especiales, una para representar saltos de línea y otra que inserta una línea horizontal. Ambas permiten dividir el texto, por lo que las hemos incluido aquí. Las marcas de bloque son:
ListasEn realidad, también son marcas que permiten definir bloques, pero con características especiales. Las listas se emplean para presentar de forma ordenada una serie de líneas. En función de su carácter lógico se distinguen los siguientes tipos de lista:
Exceptuando las listas de definición, el marcado de las líneas es igual en todos los casos: poniendo <LI> para marcar el principio de cada una, la línea termina cuando aparece un nuevo símbolo <LI> o se cierra la lista. Para las listas de definición se emplean las marcas <DT> (Definition Term) y <DD> (Definition Data) para cada término y su correspondiente definición. Se pueden poner varios términos antes de una definición (marcas <DT>), pero no dos definiciones para un solo término. Un ejemplo sería:
Marcado Lógico de FrasesExisten multitud de marcas para indicar que una palabra o frase tiene una connotación especial. Los elementos son:
Marcado Tipográfico de FrasesSe usan para indicar explícitamente el formato tipográfico de una palabra o frase. Los formatos y sus marcas correspondientes son:
Aunque no están en el estándar, algunos visores pueden soportar otras marcas de formato tipográfico como <STRIKE> (texto tachado) o <U> (subrayado).
Marcado de Anclaje de HiperenlacesUn caso especial de marcado es el representado por el elemento <A>, que se emplea para indicar que un texto hace referencia a otro, es decir, está anclado mediante un hiperenlace. Para el marcado se emplean la marca inicial con atributos, el texto a anclar y la marca final. Los atributos pueden ser:
ImágenesPara incluir imágenes en documentos HTML se emplea la marca <IMG>. Esta marca puede tener los siguientes atributos:
El único atributo imprescindible es el SRC (como es lógico, sin la imagen poca utilidad tiene la marca). Una página con varias referencias a imágenes podría ser la siguiente:
Juegos de Caracteres de los DocumentosComo mínimo todos los visores deben soportar todos los caracteres gráficos del alfabeto latino definido en el ISO Latin-1 (ISO 8859-1), que permiten escribir textos en la mayoría de los idiomas occidentales. De los caracteres de control, sólo están permitidos tres: tabulador, salto de línea y retorno de carro (códigos 9, 10 y 13 respectivamente). Como muchos sistemas tienen distintos juegos de caracteres ASCII, se han definido dos mecanismos para representar los caracteres especiales usando solamente el ASCII de 7 bits: el uso de referencias numéricas y una tabla de nombres (mnemotécnicos) para algunos de ellos. En la siguiente tabla damos los caracteres, su número y nombre:
|