Journal XHTML et UTF8

Posté par  .
Étiquettes : aucune
0
27
oct.
2003
bonjour,

afin d'occuper mes rares moments libres je programme un truc pour géré mon blog.
ça consiste en un appli java qui peut tripatouiller les articles, les stocker (pour l'instant en XML) et générer des pages html.

j'étais tout content : en une feuille de style je passe de mon format xml proprio en du joli xhtml et des caractères UTF8.

ça passe nickel avec Mozilla... et puis au hasard d'un test avec IE voilà que l'UTF ne passe pas ! j'ai des cochoneries comme è à la place de è etc.

alors avant de m'esclaffer "IE c'est de la merde" j'aimerais avoir votre avis... est-ce que mon en-tête de fichier html est correct et permet à un vrai navigateur de savoir quel est le codage sans ruse de sioux :

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd(...)">
<html xmlns="http://www.w3.org/1999/xhtml(...)" lang="fr" xml:lang="fr">

[...là c'est le code xhtml...]

  • # Re: XHTML et UTF8

    Posté par  (site web personnel, Mastodon) . Évalué à 1.

    tu as cette balise ?

    <meta http-equiv="Content-Type" content="text/html; charset=UTF8" />

    Si elle est manquante, rajoute là, peut-être que ça resolvera ton problème.
    • [^] # Re: XHTML et UTF8

      Posté par  . Évalué à 1.

      nop, ça change rien...

      pour info je l'ai mise dans head comme ça :

      <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF8" />
      <title>archives</title>
      </head>

      Mais il me semble avoir lu que les balises meta comme ça c'était valable pour du html 4... pour un fichier xhtml, le codage des caractères est signalé par la première ligne.
      • [^] # Re: XHTML et UTF8

        Posté par  . Évalué à 1.

        t'as essayé avec <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> ?
  • # Re: XHTML et UTF8

    Posté par  . Évalué à 2.

    pour géré

    J'ai honte...


    un appli

    J'ai super honte...


    cochoneries

    J'ai giga honte...


    bon, j'arrête sinon je vais trop déprimer...
  • # Re: XHTML et UTF8

    Posté par  . Évalué à 2.

    Est ce que l'entete HTTP (content-type:) n'est pas contradictoire ?
    voir la conf apache

    Dam
    • [^] # Re: XHTML et UTF8

      Posté par  . Évalué à 1.

      ah oui en effet :

      Content-Type: text/html; charset=iso-8859-1

      mais bon, je n'ai pas accès à la config d'apache... il y a un moyen de contourner à part coder mes fichiers html en iso-8859-1 ?


      le header HTTP complet :

      HTTP/1.x 200 OK
      Date: Mon, 27 Oct 2003 12:04:11 GMT
      Server: Apache/1.3.26 (Unix) Debian GNU/Linux mod_gzip/1.3.19.1a PHP/4.1.2 mod_ssl/2.8.9 OpenSSL/0.9.6g
      X-Powered-By: PHP/4.1.2
      Expires: Mon, 17 Jul 1978 05:00:00 GMT
      Last-Modified: Mon, 27 Oct 2003 13:04:11 CET
      Cache-Control: post-check=0, pre-check=0
      Pragma: no-cache
      Keep-Alive: timeout=15, max=512
      Connection: Keep-Alive
      Transfer-Encoding: chunked
      Content-Type: text/html; charset=iso-8859-1
      • [^] # Re: XHTML et UTF8

        Posté par  . Évalué à 2.

        Si tu peux faire du php:
        au debut de ton script ...

        header('Content-type: text/html; charset=UTF-8');
      • [^] # Re: XHTML et UTF8

        Posté par  (site web personnel) . Évalué à 1.

        mais bon, je n'ai pas accès à la config d'apache... il y a un moyen de contourner à part coder mes fichiers html en iso-8859-1 ?

        ajouter la directive kivabien dans un .htaccess ?
        • [^] # Re: XHTML et UTF8

          Posté par  . Évalué à 1.

          A priori ça passe. Faut mettre ça dans le .htaccess :
          AddDefaultCharset Off
    • [^] # Re: XHTML et UTF8

      Posté par  . Évalué à 1.

      un autre truc : si je télécharge le fichier en local puis que je l'ouvre avec IE, j'ai le même problème... là il n'y a pas d'en-tête http qui joue, si ?
      • [^] # Re: XHTML et UTF8

        Posté par  (site web personnel) . Évalué à 1.

        Si car IE a sauvé le fichier en iso-8859-1 (si tu as fait 'save as')...

        Sinon ce n'est pas normal...
        • [^] # Re: XHTML et UTF8

          Posté par  . Évalué à 1.

          mmh... ben en fait j'ai sauvé avec mozilla (qui marchait bien) puis ouvert avec IE (qui marche pas).

          alors finalement j'ai trouvé une option "codage" dans le menu "affichage" et ça a affiché comme il faut. Mais bon c'est pas normal que ça ne soit pas reconnu tout seul sur un fichier local.

          Merci à tout le monde, je teste tout ça (php, htaccess...) et je fais un compte rendu :)
      • [^] # Re: XHTML et UTF8

        Posté par  (site web personnel) . Évalué à 2.

        De plus pour être correcte, il faudrait dire à apache d'envoyer le fichier avec le mime type 'application/xml+xhtml' avec comme charset UTF-8...

        Par que sinon les navigateurs ne parse pas ta page comme étant du xhtml... la preuve si tu envoie du xhtml non valide avec le mime type 'text/html', il s'affiche dans le browser, si tu envoies le bon mime type, mozilla affichera une belle page d'erreur....


        Malheureusement si tu fais ça.... ben IE ne pourras plus voir ta page car IE ne comprends pas le mime type 'application/xml+xhtml', il te proposera de l'ouvrir dans notepad... aef...
        • [^] # Re: XHTML et UTF8

          Posté par  . Évalué à 1.

          Pas forcement, si cela avait été du XHTML 1.1 tu aurais raison mais là c'est du XHTML 1.0 qui accepte les deux mime-type.

          Dam
          • [^] # Re: XHTML et UTF8

            Posté par  (site web personnel) . Évalué à 1.

            Peut-être mais alors pourquoi Mozilla n'utilise pas le même parser pour le fichier xhtml avec ces 2 mime types ?

            Car même en xhtml 1.0, si non valide avec 'text/html' ça s'affiche, si non valide avec 'application/xml+xhtml' ça s'affiche pas...
            • [^] # Re: XHTML et UTF8

              Posté par  (site web personnel) . Évalué à 1.

              Tout simplement parceque mozilla utilise son parser html pour text/html, et xml pour application/xml+xhtml :)

              Ceci fait d'ailleurs parti des nombreux pieges en XHTML: on peut avoir des surprises en passant en mode xml, avec un vrai parseur xml (par exemple, le viewport en CSS2 devient <html>, et non <body>...)
              • [^] # Re: XHTML et UTF8

                Posté par  (site web personnel) . Évalué à 1.

                Ben c'est ce que je voulais dire plus haut... l'intérêt de faire du xhtml est qu'il soit valide.. l'envoyer sous un mimetype incorrect ne donnera pas les résultats attendu... donc pour de l'xhtml, il est absurde de l'envoyer comme 'text/html'... (tiens comme linuxfr par exemple.../o\)
                • [^] # Re: XHTML et UTF8

                  Posté par  (site web personnel) . Évalué à 2.

                  Je voulais dire plutôt :

                  Autant faire de l'html 4.01 plutôt que de l'xhtml... car envoyer l'xhtml sous ce mimetype c'est perdre les avantages que procure l'xhtml... et comme dit plus bas c'est pour avoir un affichage sur des browser "non xhtml compliant"(tm)...

                  Je ne vois pas l'intérêt d'xhtml par rapport à html 4.01 dans ce cas là...
                  • [^] # Re: XHTML et UTF8

                    Posté par  . Évalué à 1.

                    Ben le fait que ça soit du XML ?

                    pour avoir la possibilité de faire le parsing de ta page. qui devient un conteneur de données par la meme occasion (c'est plus facil si tu as bossé la semantique de ta page).

                    Demandes a tristant nitot si ca ne l'a pas aidé a recupérer ses données quand il est passé de blogger.com a b2 un coup de XSLT et hop un truc tout nickel.

                    qui peut le plus peut le moins, moi j'en suis a me demander pourquoi se contenter de HTML4 quand on peut utiliser XHTML ?

                    Dam
                    • [^] # Re: XHTML et UTF8

                      Posté par  (site web personnel) . Évalué à 1.

                      > j'en suis a me demander pourquoi se contenter de HTML4 quand on peut
                      > utiliser XHTML ?

                      Precisemment pour les problemes cités dans ce journal et ses commentaires.
                      Personellement, je connais les pieges, je sais comment les eviter, et je fais du xhtml. Mais par contre, je ne le conseille pas a quelqu'un voulant debuter ou se mettre au strict... faut y aller doucement :)
                      • [^] # Re: XHTML et UTF8

                        Posté par  . Évalué à 2.

                        Je suis d'un avis contraire

                        quand j'explique a quelqu'un comment faire du web je lui dit d'abord de faire la structure de ses pages en regroupant les informations par sens/theme à coup de div, de p, de liste et de span. Et ensuite de disposer ses blocs avec sont editeur d'image preféré (gimp ou toshop pour ceux qui ont des sous) et ensuite seulement de travailler le CSS pour coller au mieu à l'image qu'ils ont fait de leur page web (charte)

                        Et ils se rendent compte que le code est énormement simplifié. bien sur les limitation de certains navigateurs demande de freiner parfois ses ambitions mais que ca demande en fait plus de travail en CSS qu'en XHTML.

                        Dam
            • [^] # Re: XHTML et UTF8

              Posté par  . Évalué à 1.

              le support de text/html pour XHTML 1.0 n'est là que pour la compatibilité avec HTML 4.01 et les navigateurs existants donc juste pour un affichage HTML

              http://www.w3.org/TR/2002/NOTE-xhtml-media-types-20020801/#text-htm(...)

              Dam

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.