Subscribe

domingo, 14 de noviembre de 2010

Character Encoding en HTML

La codificación en la web ha sido uno de los grandes problemas que todo programador web se habrá encontrado en algún punto de su carrera. Sobre todo cuando los contenidos de la web son gestionados por gestores de contenido la codificación todavía es más complicada, dependerá de la codificación con la que se guarda la información, y con la que se muestra posteriormente.
En HTML existe 2 caminos de definir el encoding del documento:

  • Configuración en la cabecera HTTP: Content-Type: text/html; charset="utf-8". Esta configuración se realiza a nivel del servidor, el principal problema de esta opción es que no todo el mundo tiene libertad para manipular esta configuración, imaginaros por ejemplo los blogs como el mío que está instalado en los servidores de blogger (google) donde no tenemos esta posibilidad.
  • Configuración con metatags: <meta http-equiv="Content-Type" content="text/html; charset=utf-8">. Esta configuración va directamente en el document HTML de la página, el cual ya si es gestionado por nosotros mismos y tenemos la opción de modificar.
Ambos caminos dan el mismo resultado y la finalidad es la misma, pero es muy importante usar uno u otro sistema, pero nunca dejar sin definir el character encoding de nuestros documentos html ya que sino puede traer bastantes problemas de seguridad.
Una buena práctica es definir por defecto un encoding en las cabecera HTTP, es decir, una codificación estándar en nuestros servidores web y en los casos que sea necesaria redefinirla usando el metatags. Siempre va a prevalecer el metatags por encima de la cabecera HTTP.
HTML5 no ha cambiado nada respecto a la configuración del encoding, y todo lo comentado hasta ahora es válido para la nueva versión del estándar. Lo único que se ha modificado ha sido la forma de especificarlo con el metatags, donde se ha comprimido y simplificada la linea, de forma que ahora tan solo debemos poner:
<meta charset="utf-8" />
Para otro día comentaré otros problemas derivado del encoding más orientado a la gestión de los contenidos y la forma de presentar la información.



5 comentarios:

Anónimo dijo...

hola

Anónimo dijo...

Chetos I love

j_p.html5zoran@icloud.com dijo...

Esto es bueno!

Anónimo dijo...

This content creates a new hope and inspiration with in me. Thanks for sharing article like this. The way you have stated everything above is quite awesome. Keep blogging like this. Thanks.primary school web design uk

Aapthi Technologies dijo...

Thank you so much for taking effort to share such a useful information. I will definitely share this Moodle Web Development Company

Publicar un comentario