beufa Posté 30 Octobre 2004 Posté 30 Octobre 2004 Question bête : doit-on utiliser les caractères spéciaux dans les meta-tags ? Je pense que non car sinon Dreamweaver relèverait quand je valide mes pages. Mais sait-on jamais ?
c.klouchi Posté 30 Octobre 2004 Posté 30 Octobre 2004 Bonjour, A ce sujet, il y a 2 écoles cependant je pense qu'une est dépassé. Il n'est pas necessaire d'insérer les caractères spéciaux, car normalement vous définissez un encode pour votre page. Ainsi tout le monde est capable de la lire, si votre encodage correspond au code écris.
LaurentDenis Posté 30 Octobre 2004 Posté 30 Octobre 2004 Distinguons deux choses: - la manière dont les robots d'indexation aiment ou n'aiment pas les caractères littéraux / en entités caractères / en entités numériques. Quelqu'un a un avis clair et compétent là-dessus ? - le problème de spécifier le charset utilisé pour le contenu html. Celui-ci inclut le contenu de <head>. Donc le charset s'appliquera aux balises <meta>: dès lors que le charset est défini par en en-tête HTTP (qui l'emporte sur tous les autres moyens de le définir), il n'y a aucun problème si les caractères sont entrés littéralement par un éditeur qui respecte l'encodage en question. Autrement-dit, si vous pouvez gérer vos en-tête HTTP pour spécifier le charset de votre choix, et si votre éditeur HTML respecte l'encodage en question, tout va bien. D'autre part, par précaution, placez la <meta> content-type avant vos <meta> pour fournir l'information de charset en premier.
Monique Posté 30 Octobre 2004 Posté 30 Octobre 2004 D'autre part, par précaution, placez la <meta> content-type avant vos <meta> pour fournir l'information de charset en premier. <{POST_SNAPBACK}> Je me permets de mettre ce conseil en évidence... il est assez peu connu, rarement donné, et encore plus rarement mis en application.
beufa Posté 30 Octobre 2004 Auteur Posté 30 Octobre 2004 Eh bien je m'en vais suivre ce conseil (en fait ma balise " content-type" est bien placée : pur hasard). Merci à tous pour ces précisions!
Denis Posté 30 Octobre 2004 Posté 30 Octobre 2004 Je me permets de mettre ce conseil en évidence...il est assez peu connu, rarement donné, et encore plus rarement mis en application. C'est tellement vrai... et pourtant, d'une évidence désarmante... à quoi bon spécifier le charset à utiliser seulement une fois qu'une partie de l'information est filée au navigateur ? En spécifiant le charset en début de <head> alors tout est considéré selon celui-ci : title. metas, etc. Mieux encore, spécifier le charset directement dans les headers, mais comme ce n'est pas toujours possible...
LaurentDenis Posté 30 Octobre 2004 Posté 30 Octobre 2004 (modifié) Allez, on va enfoncer encore un peu le clou. C'est en fait une vieille recommandation... de la vénérable spécification HTML4.01 elle-même La déclaration META doit seulement être utilisée lorsque l'encodage est organisé de telle sorte que les octets en valeurs ASCII représentent des caractères ASCII (au moins jusqu'à ce que l'élément META soit analysé). Les déclarations META devraient apparaître le plus tôt possible dans l'élément HEAD. http://www.la-grange.net/w3c/html4.01/charset.html Modifié 30 Octobre 2004 par LaurentDenis
Denis Posté 30 Octobre 2004 Posté 30 Octobre 2004 Allez, on va enfoncer encore un peu le clou. Mais ça ne spécifie pas la nécessité d'annoncer son charset avant d'afficher du contenu...
LaurentDenis Posté 30 Octobre 2004 Posté 30 Octobre 2004 Les déclarations META devraient apparaître le plus tôt possible dans l'élément HEAD. La citation est tronquée, faute de quoi il faudrait citer un tiers du chapitre. Dans le contexte de la spec (voir le lien ci-dessus), c'est aussi explicite que possible... dans la mesure où la spec HTML4.01 est capable d'être explicite. Et il est vrai que nous traînons beaucoup de questions à cause de ses imprécisions, ou de ses difficultés de lecture
LaurentDenis Posté 30 Octobre 2004 Posté 30 Octobre 2004 Tiens, à propos : il serait intéressant de savoir si les robots d'indexation "forcent" le charset Windows-1252, comme le font la plupart des navigateurs quand ils sont face à un document de charset inconnu ou de charset ISO-8859-1 ?
Denis Posté 30 Octobre 2004 Posté 30 Octobre 2004 Ce n'est pas la config par défaut d'un serveur IIS qui force l'usage du windows-1252 sur un document ? C'est du moins ce que je retenais des discussions récentes sur le sujet.
LaurentDenis Posté 31 Octobre 2004 Posté 31 Octobre 2004 (modifié) Il me semble également que c'est le cas. Mais ici, il s'agit d'un problème différent : u n très grand nombre de pages théoriquement en ISO-8859-1 étant en fait en Windows-1252 (en raison d'un problème d'encodage des caractères dans les éditeurs HTML), beaucoup de navigateurs forcent l'encodage Windows-1252 afin de compenser cette erreur. Le test est facile à faire localement, en visualisant dans son navigateur le code suivant: <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <title>Test</title> </head> <body> <p>Ici devrait s'afficher une obèle: †</p> </body> Si l'obèle † s'affiche effectivement... C'est que le navigateur interprète la page en Windows-1252, où l'encodage & #134; correspond à ce caractère (en ISO-8859-1, & #134; est un code de contrôle et pas un caractère) Parmi les navigateurs qui le font: - Opera (qui le signale dans les infos de la page) - FireFox - Mozilla - IE bien-sûr... Modifié 31 Octobre 2004 par LaurentDenis
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant