5568 sujets

Sémantique web et HTML

je viens d'appliquer les entêtes qui précisent quel jeu de caractère
j'utilise.
Ce fût la plus grande catastrophe qui me soit arrivée depuis que je m'intéresse à la creation de page web:
mon éditeur web (j'utilise Microsoft Visual Web Developer 2005 Express Edition) enregistra tout le dossier de mon site avec un encodage différent ; résultat, quelques bugs sans importances, mais surtout, mes pages web n'affichent plus les lettres avec accent.
Mon site est basé sur le texte et je dois revoir tous mes fichiers et ne plus jamais utiliser cet éditeur.
A moins qu'il existe une solution de paramétrage pour cet éditeur afin qu'il fasse correspondre ses paramètres avec le langage que j'utilise et les entêtes utilisés.
Est-il possible également de faire en sorte que cet éditeur retransforme mes fichiers web dans leur version d'origine (avec toutes les lettres accentuées) sans que j'ai à intervenir sur mes fichiers?

Une dernière question concernant les entêtes;
voici celle que j'utilise pour toutes mes pages:

<?xml version="1.0" encoding="iso-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
    <meta http-equiv="Content-type" content="text/html; charset=iso-8859-1" />


Est-elle corecte d'après-vous?

J'espère pouvoir résoudre ce problème assez rapidement.
Ciao! J'ai de longues heures de travail devant moi (vive notepad2) Smiley cligne
Modifié par masque (11 Sep 2006 - 05:24)
Salut

Tes déclarations d'encodage me semblent correctes, à condition évidemment que tu encodes tes fichiers avec le même jeu de caractères Smiley confus

Sais-tu quels caractères Visual Studio a encodé tes pages ? S'il a tout converti en UTF-8 ou autre, il suffit peut-être de modifier le charset de ton document html pour récupérer les accents.

Rem : le prologue xml est inutile dans ce cas, et fait passer IE en mode "quirks" ... voir dans la faq.
Modifié par Sopo (26 Aug 2006 - 17:35)
Bonjour,

La première chose à faire, à ce stade, est de déterminer quel est actuellement l'encodage réel de tes pages, utilisé lors de l'enregistrement par Microsoft Visual Web Developer 2005 Express Edition, et s'il s'agit bien d' iso-8859-1 :
- un encodage a-t-il été explicitement choisi ? lequel ?
- sinon, l'aide de cet éditeur indique-t-il quel est l'encodage par défaut ?
- en dernier ressort, mettre une page en ligne si tu ne parviens pas à déterminer cet encodage réel.

Une fois déterminé l'encodage réel, si le site est en ligne, il faut vérifier que le serveur envoie bien un en-tête HTTP content-type précisant le même jeu de caractère (ou ne précisant aucun jeu).
Le mal est fait! Smiley decu
J'ai enfin compris comment paramétrer visual studio.
Le probleme c'est que l'on ne peut revenir en arrière.
Bon! Tant pis, ce n'est que du boulot (une ou eux journée de recherche).

Ce n'est pas pour autant que j'ai résolu tous mes problèmes.
J'essaie de vérifier la conformité de quelques pages de mon site.
Sur le site du w3c, j'ai été surpris par quelques unes de leurs remarques:

<meta http-equiv="Content-type" content="text/html; charset=iso-8859-1"> // ceci est accepté en xhtml 1.0 Transitional//FR

<meta http-equiv="Content-type" content="text/html; charset=iso-8859-1"/>// ceci ne l'est pas .

Idem pour :

<link rel="STYLESHEET" href="image.css" type="text/css">// accepté
<link rel="STYLESHEET" href="image.css" type="text/css">// non conforme en xhtml 1.0 Transitional//FR 


voici mon entête

<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr" dir="ltr">
<head>
    <meta http-equiv="Content-type" content="text/html; charset=iso-8859-1">

que veulent-ils dire par ( que demandent-t-ils en d'autres termes):

"The MIME Media Type (text/html) for this document is used to serve both SGML and XML based documents, and it is not possible to disambiguate it based on the DOCTYPE Declaration in your document. Parsing will continue in SGML mode" ???
Je n'y comprend rien.
En d'autres termes, il m'indique que les navigateurs ne reconaîtront pas le langage 'xhtml 1.0' mais appliqueront ma page en tant que fichier html.
Que dois-je donc faire pour bien paramétrer mes page puisque mon entête n'est pas conforme? (d'où peut-être le refus des"/>" dans les exemples que j'ai cités plus haut. Cette méthode est acceptée partout ailleurs dans mon document web).
Evidement plus loin, il m'indique une erreur du "Namespace ":
"Namespace found, but document type is not XML!"
Sur le site de Validome http://www.validome.org:
-Si je laisse les paramétrages en automatique, il ne détecte pas une page en xhtml, je cite: "Une déclaration XML a été trouvée dans ce document HTML, ce qui est interdit."
Si j'indique que mon document utilise l'application langage xhtml 1.0 Transitional, voici la réponse:
"Ce document XHTML 1.0 a été soumis avec le type MIME text/html, ceci n'est cependant autorisé que lorsqu'il correspond aux directives pour HTML."
"Aucun encodage n'a été trouvé. C'est la raison pour laquelle il a été fait recours à UTF-8."
Je suis perdu Smiley decu ; Je voudrais régler ce problème d'encodage et d'entête le plus vite possible afin que mes documents web ne soient plus déformés et que je puisse continuer sans apréhensions et sans pertes de temps inutiles (ne pas repasser tous mes documents en revue pour un défault technique de conformité du protocole d'entêtes laborieuses, ce que je dois faire actuellement).
J'espère que la question n'est pas confuse.



-
Bonjour,

masque a écrit :
voici mon entête

<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr" dir="ltr">
<head>
    <meta http-equiv="Content-type" content="text/html; charset=iso-8859-1">



Le validateur du W3C donne un résultat incohérent en raison d'une erreur dans la syntaxe de ta DTD. Ce n'est pas Transitional//FR mais Transitional//EN (cette mention n'a aucun rapport avec la langue de ta page. Elle ne concerne que la langue dans laquelle est rédigée la DTD distante, et ne doit jamais être modifiée).

Pour être sûr d'utiliser une DTD correcte, ne pas se fier aux éditeurs HTML, et faire un copié collé depuis la Recommended list of DTDs du W3C. Attention: la casse doit être respectée.

masque a écrit :
Sur le site de Validome


Eviter par ailleurs ce validateur en développement, aux recommandations parfois fantaisistes (désolé pour ses auteurs).
Modifié par Laurent Denis (27 Aug 2006 - 15:34)
Merci de votre participation à cette question.
Mes pages sont maintenant validées auprés du w3c.
Bon, à charge de revanche.
Smiley smile A bientôt!