Cita:
Iniciado por RBZ El charset=iso-8859-1 es la codificación "preparada" para el idioma español, si usas los signos españoles ñ, acentos, el navegador los interpreta correctamente.
Si usas UTF-8 debes "darselos" codificados. Por ejemplo
Código:
la ñ = ñ
acentos la letra entre & y acute;
Ejemplo:
ó = ó
disculpame, pero esto es tremendo disparate.
el texto, aunque uno piense que es algo de uso universal tiene formatos, al igual que la música tiene diferentes formatos (MP3, WMA, OGG) o los archivos de video (AVI, MPG, MKV) o también las imágenes (JPG, PNG, GIF); estos formatos, o "codificaciones" son la forma como se guardan los datos a nivel de máquina, porque para la computadora TODO son bits, no hay diferencia entre los bits de un archivo de sonido a los de una película, lo que hace que se puedan procesar adecuadamente es el hecho de que cada uno tenga asociado un método mediante el cual se interprete, he ahi el por qué de los errores en los acentos, los archivos de texto cuando no son interpretados correctamente dan resultados erroneos.
¿donde nace el problema? el problema existe cuando quién interpreta el archivo no conoce su formato, en nuestro caso el navegador y es por eso que se utiliza el meta-tag "Content-Type" pero no es esta la única forma, se podría configurar el servidor para que conteste con la información necesaria para el navegador sin tener que incluírla nosotros el nuestra página o si estuviesemos trabajando con XHTML se podría incluír esa información en la cabecera XML.
como sea lo importante en realidad es saber exactamente que tipo de archivo estamos generando, esto va en función de como este configurado el programa que genera el archivo HTML, que es de hecho un archivo de texto y en base a ese formato el tag que agreguemos.
yo prefiero UTF-8 por varias razones, primero que nada compatibilidad, UTF-8 es un formato pensado para cubrír TODAS las codificaciones existentes, es decir que usando UTF-8 podemos escribír en cualquier idioma del mundo y ver correctamente sus caracteres, a diferencia de lo que decía RBZ no hay que mandar los acentos como entidades HTML sino todo lo contrario, teniendo el archivo guardado como UTF-8 es posible escribír sin usar ninguna entidad excepto por las que se usan para evitar conflictos con el formato HTML, que son las que representan los caracteres '<', '>', '&' y las comillas.
uds diran "si pero yo no voy a escribír en japonés ni en griego ni en ninguna otra lengua que utilice caracteres extraños", es verdad yo por el momento no he tenido que hacerlo tampoco sin embargo el hecho de que a nivel mundial sea posible usar un mismo formato es una gran ventaja porque se simplifican muchísimas cosas; entre ellas la razón de este topic, si se usase UTF-8 de forma universal ya no existirían este tipo de problemas de compatibilidad, de hecho es a esto a lo que se apunta desde los estándares, el XML (y por extensión tambien el XHTML) usa como codificación por defecto el UTF-8.
por último, las entidades HTML (que no son una codificación, sino una representación textual que nace del própio formato HTML) eran usadas para poder tener el documento HTML con un formato ASCII plano de siete bits y aún asi representar otro tipo de carateres extendidos, esto también apuntaba a la compatibilidad pero eran otros tiempos, hoy día la solución es UTF-8.
les dejo la lista completa de entidades por si alguien quiere vichar: http://www.w3.org/TR/html401/sgml/entities.html