Mundo Web
manuales - recursos - gráficos - programación...

Home - HTML - Etiquetas olvidadas- 1 - 2 - 3 - 4 - 5

LAS ETIQUETAS OLVIDADAS (III)
por Luciano Moreno, del departamento de diseño web de BJS Software.


La etiqueta META HTT-EQUIV="Content-Type".-

Como podéis comprender, trabajar en este entorno limita sobremanera las posibilidades del diseñador web. Si quiere que su página sea vista por todos los posibles visitantes del mundo debe pasar a referencias todos aquellos caracteres y símbolos que no pertenezcan al conjunto ASCII, para buscar la compatibilidad total. Pero ¿y si su idioma posee letras que no tienen una referencia de caracter?. ¿Y qué pasa con las idiomas orientales, el chino, por ejemplo?.

Afortunadamente los navegadores web actuales ofrecen una solución para estos casos, ya que son capaces de mostrar un mismo documento usando diferentes juegos de caracteres. Podemos configurar nuestro navegador para que use un conjunto determinado de ellos; para ello basta ir al menú ver > codificación y elegir allí el conjunto deseado. Pero además, es posible usar una etiqueta estándar HTML para decirle al navegador qué conjunto de caracteres debe usar para presentar nuestras páginas. Esta etiqueta es el
META HTT-EQUIV="Content-Type". Su sintaxis general es:

<META HTTP-EQUIV= "Content-Type"CONTENT="text/html;charset=juego_caracteres_a_usar">

El atributo CHARSET va a fijar el conjunto de caracteres de la página, de tal forma que cuando un usuario pida esta al servidor web lo primero que va a recibir su navegador va a ser un cabecero HTTP con esta etiqueta META, con lo que este pedirá al sistema operativo que cargue dichos caracteres, para poder así presentar la página adecuadamente. Si el usuario no tiene instalado en su sistema dicho conjunto de caracteres, el navegador presentará una ventana de aviso, informando que para ver corréctamente la página es necesario descargarlo de Internet, y procederá automáticamente a sus descarga e instalación, salvo que el usuario no desee que se realice dicha operación y la anule manualmente.

Una vez descargado el paquete, la página será presentada adecuadamente, de acuerdo a como el diseñador la construyó.

Si, por ejemplo escribimos una página en chino, deberemos establecer la etiqueta META:

<META HTTP-EQUIV= "Content-Type"CONTENT="text/html;charset= chinese">

Esta etiqueta es pués muy útil, al darnos la flexibilidad de trabajo necesaria, pero hay que tener en cuenta que hay navegadores web que no admiten esta etiqueta META, aunque sí los más usados y actuales.

Para las páginas en castellano, catalán o vasco deberemos usar el conjunto de caracteres ISO 8859-1, también denominado Latin1, que comprende las letras acentuadas (á, `, etc) y la letra ñ, tanto en mayúsculas como en minúsculas, y entonces la etiqueta META adecuada sería:

<META HTTP-EQUIV= "Content-Type"CONTENT="text/html;charset= ISO-8859-1">

Esta etiqueta se debe situar en la cabeza de la página, preferiblemente entre <HEAD> y <TITLE> para que de entrada, si el título de la página contiene caracteres no ASCII, se muestre correctamente. Ejemplo:

<HEAD>
<META HTTP-EQUIV= "Content-Type"CONTENT="text/html;charset=ISO-8859-1">
<TITLE>página de programación española</TITLE>
...
...

El estándar ISO 8859.-

Según hemos visto disponemos de una etiqueta HTML estándar para la definición del conjunto de caracteres que debe emplear el navegador para presentar nuestra página. Vamos ahora a ver de cuántos conjuntos de caracteres disponemos.

Para nuestras necesidades primarias disponemos del estándar ISO 8859, formado por diferentes paquetes de caracteres que nos van a permitir trabajar con las lenguas más comunes. Este estándar fué definido por la Asociación de Fabricantes Europeos de Computadoras (ECMA) en 1980, y aprobado posteriormante pos la Organización Internacional de Normas (ISO), y es el que se debe usar en el lenguaje HTML.

Las principales familias de caracteres pertenecientes al ISO 8859 son:

* ISO-8859-1 (Latin1): cubre las lenguas de Europa del Oeste, incluyendo francés, español, catalán, vasco, portugués, italiano, albanés, holandés, alemán, inglés, sueco, noruego y otras más. Esta familia es la base actual del juego de caracteres de HTML.

Los símbolos incluidos en este estándar podéis verlos en esta ventana.

Existe una versión particular de esta familia creada por Microsoft para sus sistemas Windows, que además de los caracteres anteriores contiene el símbolo del Euro, y que es denominada Windows-1252.

* ISO-8859-2 (Latin2): cubre las lenguas de Europa Central y Occidental, como checo, polaco, rumano, croáta y esloveno.

* ISO-8859-3 (Latin3): usado para escribir en esperanto y maltés.

* ISO-8859-4 (Latin4): que cubre el estonio, el letón, lituano y lapón.

* ISO-8859-5 (alfabeto cirílico): que contiene las letras cirílicas, con las que se pueden escribir en búlgaro, bielorruso, macedonio, ruso, servio y ucraniano.

* ISO-8859-6 (alfabeto árabe): que comprende las letras básicas de la lengua árabe, aunque no incluye las extensiones necesarias para el persa ni el paquistaní. Aunque contiene las bases de del árabe, hay que tener en cuenta que las letras de esta lengua pueden tener hasta cuatro formas de representación diferente, por lo que para su correcta presentación en una página hace falta a menudo un programa independiente que analice el contexto en el que se encuentran las letras y le de la intrepretación adecuada.

* ISO-8859-7 (griego): que cubre todas las letras de la lengua griega.

* ISO-8859-8 (hebreo): que abarca los caracteres necesarios para escribir en hebreo y Yídish.

* ISO-8859-9 (Latin5): que amplía los conjuntos de caracteres latinos anteriores, añadiendo las letras que faltaban para poder escribir completamente en turco y en islandés.

* ISO-8859-10 (Latin6): que completa al anterior Latin4, añadiendo los símbolos que faltaban para poder escribir en letón, el esquimal, el lapón y las demás lenguas nórdicas.

Juegos de caracteres anteriores.-

A menudo nos encontramos en las etiquetas HTML una declaración del juego de caracteres usado del tipo EN, por ejemplo, que designa a la lengua inglesa, o incluso en-us, que corresponde a la variante norteamericana de la lengua inglesa. Este tipo de declaraciones del juego de caracteres usado corresponde a las especificaciones ISO-639-1 e ISO-639-2, anteriores a la ISO-8559.

Sólo comentar de ella que todavía se puede usar con toda normalidad, y que las siglas correspondientes a la lengua española son es, por lo que para definir el conjunto de caracteres para una página en castellano habría que escribir la etiqueta:

<META HTTP-EQUIV= "Content-Type"CONTENT="text/html;charset=es">

o

<META HTTP-EQUIV= "Content-Type"CONTENT="text/html;charset=spa">

Si deseáis ver la tabla completa de siglas para las diferentes lenguas en esta especificación, podéis hacerlo en http://lcweb.loc.gov/standards/iso639-2/

Juegos de caracteres avanzados: UCS y UNICODE.-

Al igual que se pasó del estándar ASCII al ISO-8559 buscando la posibilidad de escribir y transferir documentos por Internet en más lenguas, el estándar ISO-8559 se ha mostrado con el tiempo insuficiente para atender todas las peticiones que llegan desde diversas partes del mundo. Además, la división de este estándar en diferentes juegos de caracteres crea una confusión sobre cual de ellos es el correcto para cada lengua.

Por todo esto surgió la necesidad de establecer un nuevo conjunto de caracteres estándar que simplificara las cosas y que comprendiera todos los caracteres universales.

Para cubrir esta necesidad se han creado dos nuevos juegos de caracteres, más completos y unificados: el UCS (Juego Universal de Caracteres), que es en realidad el ISO-10646, evolución del estándar ISO-8859, y el UNICODE, que actualmente tiene como versión estable la 2.1, aunque ya se está trabajando en las versiones 3.0 (de próxima implementación) y 4.0, que es la que se pretende que se haga el estándar para la transmisión de textos en Internet.

Estos juego de caracteres a veces se confunden entre sí, y aunque son diferentes en origen, son iguales en la práctica, ya que actualmente comprenden los mismos caracteres e igual implementación.

Ambos estándares se basan en asignar un número hexadecimal a cada caracter significativo de las principales lenguas mundiales, buscando un acuerdo universal para las comunicaciones en Internet. Este número es único para cada caracter, y permite representar a este por medio de una sintaxis del tipo U+abcd, es decir, el prefijo U seguido del signo + y del número hexadecimal asignado al caracter.

Además de este número único, también se establece un nombre representativo del caracter, dado en el idioma inglés oficial.

Al igual que el ASCII, el estándar UNICODE distingue mayúsculas de minúsculas, pero a diferencia de este distingue caracteres por la escritura, no por la lengua, por lo que un mismo código puede ser usado por dos idiomas, adoptando en cada uno la apariencia necesaria. Esto hace necesario especificar en la página qué lengua en concreto de debe representar, lo que se puede conseguir, por ejemplo, mediante la Meta etiqueta:

<META HTTP-EQUIV="Content-Language" CONTENT="idioma-variante">

UNICODE 2.0 permite escribir en árabe, armenio, bengalí, en alfabeto cirílico, georgiano, hebreo, latino, tibetano y algunas lenguas más de menos uso.

Para cualquier consulta respecto a los conjuntos UNICODE consultar la página web de la propia organización, http://www.unicode.org/

ventana con el juego de caracteres UNICODE



anterior
siguiente

Home - HTML - Etiquetas olvidadas- 1 - 2 - 3 - 4 - 5