Cristalab

Entidades HTML, Charset y codificación de texto

Por: RattaMono + 12.02.2007

A veces necesitamos mostrar símbolos acentuados o especiales de una región, ideogramas o fonemas especiales (Tildes, la eñe, la ç, signos raros, etc). Para poder usarlos, necesitamos una especie de "caja" que contiene letras, buscamos en la caja y si aparece el carácter deseado, se imprime en la pantalla, si no aparece, se imprime un carácter desconocido. Ahora piensen que hay cajas para todos los gustos e idiomas. Lógicamente necesitamos seleccionar la caja que más se nos acomode a nuestro idioma.

Aquellas cajas se llaman Charsets y en caso de que nuestro carácter no este en ella, podemos usar Entidades.

Primero la base... si hacen paginas web, les sonará conocido algo como á eso, es una entidad o entitie, como deseen llamarle. Bien sabemos que si escribimos á nos devolverá á. Pero dependiendo del charset, podemos obviarlas.

Un charset es una norma, algo que define como se verán ciertos caracteres. Partamos con el charset mas extendido: UTF-8. Este usa Unicode y el charset por defecto en XHTML y XML. UTF-8 tiene la ventaja de codificar cualquier carácter, ya que usa el estándar unicode, que tiene la capacidad de codificar cualquier carácter, como se puede ver aqui. Las desventajas son que dependiendo de la 'distancia' del carácter, usaremos mas espacio al visualizarlo.

Otro charset ampliamente usado, es el ISO-8859-1. Es una norma de la ISO (La organización mundial de los estándares). Usa ASCII mas 128 caracteres. En él se codifica todo el alfabeto latino (a-z, A-Z), diacríticos (á-ú, ñÑ, ý, ô... etc) entre algunas letras griegas.

Ahora bien, nosotros DEBEMOS usar entidades en dos instancias:

Para definir que charset vamos a usar en XHTML, debemos especificarlo como un atributo de una etiqueta meta:

Código :


<meta content="text/html; charset=[b]iso-8859-1[/b]" http-equiv="Content-Type" />


Y para definirlo en XML usaremos:

Código :


<?xml version="1.0" encoding="[b]iso-8859-1[/b]"?>


En caso de que lo necesiten, una tabla de entities Guiño


Si se pone la primera letra en mayúscula, el resultado sera en mayuscula: &X; = X (&Aacute; = Á)
&aacute; = á
&eacute; = é
&iacute; = í
&oacute; = ó
&uacute; = ú

&agrave; = à
&egrave; = è
...

&acirc; = â
&ecirc; = ê
...

&auml; = ä
&euml; = ë
&aelig; = æ
&AElig; = Æ

&atilde; = ã
&ntilde; = ñ

//Símbolos.
&quot; = "
&amp; = &
&lt; = <
&gt; = >
&euro; = €
&nbsp; = (espacio)
&brvbar; = |
&circ; = ^
&copy; = ©

//Letras griegas, se pueden hacer mayúsculas poniendo en mayus la 1era letra
&Omega; = Ω
&upsilon; = υ
&el_nombre_de_la_letra ....


Para finalizar, algunas notas:

Espero que les sea de ayuda... Saludos miau

Etiquetas html

Comentarios | Enviar un comentario
Muy buen articulo, hace tiempo lo descubri y me parece bueno que hagas mencion de ello. para que los que van empezando sepan que onda con este mundo.
Por: flashreloco_blog
Muchas gracias, es de gran utilidad!
Por: Ddict_blog
Para complementar, aquí hay una lista de ayuda con muchas entidades que pueden ser usadas en xml/xhtml/html.

http://www.ilovejackdaniels.com/cheat-sheets/html-character-entities-cheat-sheet/
Por: neojp_blog
muy bien.. pero como lo uso en flash..??
Por: fran_blog
Muy bien explicado Guiño
Otra referencia HTML Entities
Por: Coyr
muchas gracias me fue de mucha ayuda
Por: yo_blog
Gracias me sirvió de ayuda, tenia un web don de al trasladarlo de servidor los caracteres acentuados no se veían. Simplemente coloque el charset y listo
Por: fania_blog
escriban que se entienda mas mejor la informacion ok
Por: vivi_blog
El artículo esta muy comprensible. Tengo dos preguntas: 1. Qué hay acerca del charset "windows-1252"? 2.Tiene alguna influencia el charset que ocupemos en que la pagina sea más amigable a los search engine spider? Gracias
Por: Caro_blog
tal vez les interese esta función que hice para php. cambia los caracteres comunes por las entidades. muy útil para formularios dinámicos.
[code]
function reemplazar_acentos($texto){ //reemplaza los caracteres raros por los acentos.

$acentos = array(
'á' => '
Por: aragoth21 [at] gmail [dot
mmm salió mal :s
lo pongo denuevo

[code]
function reemplazar_acentos($texto){ //reemplaza los caracteres raros por los acentos.

$acentos = array(
'á' => '
Por: aragoth21 (at) gmail (dot
bueno, no funciona miau;
Por: aragoth21_blog
Tengo un problemilla que no he logrado solucionar con el charset y es que a pesar de haberle puesto el ISO-8859-15 mi editor sigue sin mostrar los acentos ni las Ñ ni nada. Se os ocurre alguna solución?? Gracias de antemano!!
Por: Schani_blog
Que yo tenga entendido ISO 8859-15 nunca tuvo problemas con la 'ñ' o con cualquier diacrítico. Puede ser la codificación con la que está guardado el archivo, ve con tu editor de texto en que codificacion se guarda el archivo y ve que sea idéntica a la que tu definiste en el meta.

Sino, puedes usar entidades o escribir la poscision de la ñ encuanto al charset.

También podrías cambiar el charset a UTF-8.
Por: RattaMono
Que efecto tiene si el - @charset "utf-8"; -
es utilizado en el css ??
Por: Dreggoth_blog
Lo que presentas es bueno, pero quisiera que me ayudes en algo, tengo páginas elaboradas que tiene el charset window-1252 que si se pueden visualizar bien pero otras no porque aparece un cuadrado en donde hay tildes, me parece raro que en algunas páginas si esté bien y en otras no, si puedes ayudarme para solucionar mi problema te agradezco de antemano.
Por: Blanca_blog
hola
Por: andrea-blog
Deja un comentario
IMPORTANTE

Recuerda ser respetuoso, no insultes a otras personas, ni uses palabrotas, hay una persona al otro lado de la pantalla.

Habla bien, NO ESCRIBAS EN MAYUSCULA TODO, no escribas como en un SMS, evita cosas como "ke", "x q" y demás abreviaciones.

Aquí funcionan las etiquetas de los foros, puedes usar [b] para negrita, [img] para las imágenes, [url] para los enlaces, etc.

Si tienes preguntas técnicas, envíalas mejor al foro.