5568 sujets

Sémantique web et HTML

Salut,

Voila, ne sachant pas trop ce que cela signifiait, j'avais mis :
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15" />

Mais voila que mes signes euros et mes apostrophes sont remplacés par des carrées blancs !
Je cherche un petit peu et je lis (sur ce forum) que iso-8859-15 serait comment la nouvelle version du iso-8859-1, et qu'il prendrait en compte (entre autre) le signe euro !
Mais bon mon signe euro ne passe pas, je ne comprend pas pourquoi alors qu'avec iso-8859-1, il passe parfaitement.
Pour les apostrophes, j'ai compris, la plus par de mes textes proviennent de world et sont donc un ` (non valide au validateur Smiley lol )et non un '. Il faut donc que je les changent tous dans mon fichiers world, quelques centaines de faux apostrophes pour vous dire. J'ouvre donc mon fichier avec dreamweaver, fait ctrl-f, et fait remplacer tout mauvais apostrophe par les bons, mais voila que le mauvais apostrophe est l'équivalent d'un espace, bref il me change tous les espaces également, s'en suit une cacafonie, jvous en parle pas Smiley lol
Bref question 1 : vous avez un chti truc pour m'éviter de changer tous les apstrophes à la main? (je sens que je vais devoir m'y coller)
Question 2 : Est-ce normal que le signe euro ne soit pas pris en compte pour iso-8859-15, je l'ai mis tel quel et en caractère ASCII, ca ne change rien...

Vala, vala, merci à vous Smiley smile
Vincent
Vinz a écrit :
Voila, ne sachant pas trop ce que cela signifiait, j'avais mis :
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15" />

Mais voila que mes signes euros et mes apostrophes sont remplacés par des carrées blancs !


Ce qui signifie que cet encodage ne correspond pas à l'encodage réel de ton document, déterminé par l'éditeur dans lequel tu l'as créé.

Vinz a écrit :

Je cherche un petit peu et je lis (sur ce forum) que iso-8859-15 serait comment la nouvelle version du iso-8859-1, et qu'il prendrait en compte (entre autre) le signe euro !
Mais bon mon signe euro ne passe pas, je ne comprend pas pourquoi alors qu'avec iso-8859-1, il passe parfaitement.


Le signe euro écrit directement (littéralement) dans le HTML... n'existe pas en iso-8859-1. Donc, ton document ne peut pas être en iso-8859-1.
Hypothèse classique dans ce cas de figure : tu fais du Windows-1252 comme monsieur Jourdain, sans le savoir Smiley cligne

Vinz a écrit :

Pour les apostrophes, j'ai compris, la plus par de mes textes proviennent de world et sont donc un ` (non valide au validateur Smiley lol )et non un '.


Word ? alors confirmation : ton encodage réel ne peut guère être que Windows-1252.

Dans un premier temps, la <meta> correcte est donc :
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252" />


Mais il faut que tu saches que les outils qui te servent à écrire ton contenu HTML l'encodent d'une manière qui ne sera pas reconnue correctement par tous tes visiteurs.

Donc :
- Passer à des éditeurs utilisant un encodage non problématique, comme iso-8859-1 ou, mieux, utf-8, est indispensable. En commençant par oublier Word pour produire du contenu pour le Web.
- lire introduction aux jeux de caractères pour débrousailler un peu cette notion d'encodage Smiley cligne
Modifié par Laurent Denis (04 Aug 2005 - 20:35)
Merci pour ta réponse (désolé de répondre avec 20 jours d'interval Smiley lol ).

Bref entre temps j'ai un petit peu avancé, j'étais en vacances et me revoila avec la meme question Smiley cligne :

Le site est maintenant en ligne, vous pouvez voir à l'adresse suivante :
http://www.aubergedesvieillespierres.fr/la_carte.html
Le document est édité sous dreamweaver MX (les menus m'étaient envoyé sous word c'est pour cela que j'ai du changer certains caractères), l'encodage est :
a écrit :
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

Le signe euro tapé dans l'éditeur est celui présent simplement sur mon clavier.
Le signe euro passe bien sour IE et FF, mais bien sur la page est invalide xhtml. Pour cause le signe euro qui n'existe pas dans cette methode d'encodage (pourtant bien affiché).

Alors que dois-je faire?
Passer à iso-8859-15? J'ai plein de problême d'écriture, je ne comprend pas trop pourquoi dans ce cas la...
Y a-t-il une autre solution?

Merci à vous Smiley smile
Vincent
Bonjour,

Réponse rapide pour cause de départ en vacances :
- la saisie au clavier du caractère euro produit obligatoirement, sous windows, l'octet 128, qui ne représente ce caractère qu'en Windows-1252. Les éditeurs conformes "interceptent" cet octet et le convertissent en une autre valeur pour respecter l'encodage demandé pour le document (octet 164 en iso-8859-15)
- Mais Dreamweaver MX ne sait pas gérer correctement cette interception pour l'euro et pour d'autres caractères problématiques ( ligatures oe, tiret cadratin, boulet, etc) : il fait une joyeuse soupe entre les encodages ISO-8859-1 et Windows-1252.
- Accessoirement, il me semble me souvenir (mais à confirmer), qu'il ne sait pas produire de l'ISO-8859-15, ce qui expliquerait les problèmes que tu rencontres quand tu tentes d'utiliser ce charset.
- les navigateurs sous lequels tu as testé ta page (navigateurs sous windows) faussent le résultat : comme ce problème d'encodage windows 1252 est une plaie depuis longtemps, ils présument qu'une page déclarée en iso 8859-1 est en réalité en windows 1252. Mais tous les navigateurs de tous les OS ne le font pas...

Donc, concrètement : si tu conserves Dreamweaver MX, reste en iso-8859-1, et utilise les entités numériques ou caractères pour tous les caractères problématiques, c'est à dire :
- l'euro : écrire &euro; ou &#8364;
- les caractères listés dans le lien ci-dessus
- tout autre caractère qui t'est signalé comme invalide par le validateur HTML, ou qui pose un problème d'affichage. Les entités numériques /caractères sont faciles à trouver via ce site.