5568 sujets

Sémantique web et HTML

Bon, je sais sujet plus que traité :D !

Ceci, alors que j'ai lut dans toutes les doc que application/xhtml+xml n'était pas supporté par IE et donner le fichier à télécharger, j'ai fait une page de test :
http://www.jsand.net/test.html

Suprise, sous IE comme Momo, le "coucou" s'affiche, aucun pb ! Pourtant en XHTML1.1 complet ce coup-ci Smiley mur

Là, je comprend plus :d !

Merci ^^

PS: Au passage, pouvez-vous me dire si www.jsand.net est maintenant parfaitement aux normes ?
Administrateur
Juxener a écrit :

Suprise, sous IE comme Momo, le "coucou" s'affiche, aucun pb ! Pourtant en XHTML1.1 complet ce coup-ci Smiley mur

Parce que ça dépend aussi de ce que renvoie ton serveur.
Ici, c'est "text/html".
Tu veux dire donc que c'est parce que coucou est du HTML ?
Tu aurais un exemple de contenu qui ne passerait pas sous IE ?

(merci !!)
Administrateur
Juxener a écrit :
Tu veux dire donc que c'est parce que coucou est du HTML ?

Oui, il n'y a pas que la balise meta content, le serveur aussi envoie le type mime text/html par défaut. si tu veux contourner ça il faut utiliser du PHP pour dire au serveur d'envoyer application/xhtml+xml.
Mais tu aurais concrétement un exemple le plus simple possible d'une page XHTML1.1 ne passant sous IE ?
Administrateur
Juxener a écrit :
Mais tu aurais concrétement un exemple le plus simple possible d'une page XHTML1.1 ne passant sous IE ?

Non, mon serveur envoie aussi du "text/html"
Alors même si je voulais me mettre en XHTML1.1 (sans faire attention aux nav comme IE), je ne pourrais pas (n'ayant pas accés aux config Apache, en mutalisé) ?
Y'a qu'à voir, j'ai fait un petit truc en PHP:

http://phpassoc.raboud.com/

=> text/html

http://phpassoc.raboud.com/?xhtml=1.1

=> application/xhtml+xml

C'est envoyé avec
header("Content-Type: application/xhtml+xml; charset=iso-8859-15");
en PHP

:-D

Et voilà !

@+, HoPHP

[Edit]Il faut noter qu'en XHTML 1.1, il n'y a plus de
<?xml version="1.1" charset="iso-8859-15" ?>
à mettre ! (sinon FireFox fait une erreur d'exécution XML (qui ne donne même pas accès au code source !)[/Edit]
Modifié le 08 Nov 2004 - 21:01
Ok, je teste ça dés que j'ai accés à un Windows !

Au passage, dans les autres topics, j'ai lu que du XHTML 1.1 text/html n'est pas conforme, je suis d'accord!

Mais le W3C ne dit-il pas :
4. SHOULD NOT This phrase, or the phrase "NOT RECOMMENDED" mean that

there may exist valid reasons in particular circumstances when the
particular behavior is acceptable or even useful, but the full
implications should be understood and the case carefully weighed
before implementing any behavior described with this label.


Est-ce vrai ? (on me l'a copié-collé)
Y'aurait-il écrit qq part que XHTML 1.1 en text/html n'est pas conforme ?

(merci de ttes ces infos)
Merci, mais ce serait-ce pas un peu prétentieux de dire que ces deux sites ont raison ?
Qu'ils contredisent le W3C en personne ?
HoPHP a écrit :
Pas mal, mérite mieux: sous lynx

@+, HoPHP

Ha tiens, je connaissais pas ça :) !
Mais je pense savoir le but.

Béh oui j'aurais vu pire ^^ !
Mais comment peut-on faire mieux, dans la mesure où la mise en page n'est évidemment pas du tout interprétée ?
>Juxener

En mettant les choses dans le bon ordre et mieux placées "sémantiquement parlant" (voir tutos :-D)

>Raphael (et Juxener)

Et ça, c'est quoi ? Bon, c'est en anglais, mais bon :-D C'est sur le site du W3C, alors bon:

http://www.w3.org/TR/xhtml-media-types/#summary

@+, HoPHP (il va vraiment falloir que je change de pseudo, crois-je)
Modifié le 08 Nov 2004 - 21:36
Raphael a écrit :

Il n'y a pas vraiment de "lien officiel".
http://annevankesteren.nl/archives/2004/06/invalid-html
http://www.hixie.ch/advocacy/xhtml


Il y a plusieurs liens tout à fait officiels, dont tout simplement la FAQ XHTML du W3C : http://www.w3.org/MarkUp/2004/xhtml-faq.html#mime11

FAQ W3C a écrit :

Why is it allowed to send XHTML 1.0 documents as text/html?

XHTML is an XML format; this means that strictly speaking it should be sent with an XML-related media type (application/xhtml+xml, application/xml, or text/xml). However XHTML 1.0 was carefully designed so that with care it would also work on legacy HTML user agents as well. If you follow some simple guidelines, you can get many XHTML 1.0 documents to work in legacy browsers. However, legacy browsers only understand the media type text/html, so you have to use that media type if you send XHTML 1.0 documents to them. But be well aware, sending XHTML documents to browsers as text/html means that those browsers see the documents as HTML documents, not XHTML documents.

Why is it disallowed to send XHTML 1.1 documents as text/html?

XHTML 1.1 is pure XML, and only intended to be XML. It cannot reliably be sent to legacy browsers. Therefore XHTML 1.1 documents must be sent with an XML-related media type, such as application/xhtml+xml.


A ce propos, le W3C entreprend depuis quelques temps un effort important d'explication autour des normes XHTML. Voir http://blog-and-blues.org/weblog/2004/08/09/265-ne-validez-pas-en-aveugle-lisez-les-specifications- pour une liste des documents en question.
Modifié le 09 Nov 2004 - 06:33
Merci Laurent grace à la faq du W3C, j'ai compris comment résoudre le problème de IE :

"FAQ W3C" a écrit :
XHTML 1.1 documents must be sent with an XML-related media type, such as application/xhtml+xml.


Ce qui veut dire : "Un document XHTML 1.1 doit etre envoyer comme du XML avec un type de media (type-mime) correspondant, comme par exemple application/xhtml+xml"

Donc cette phrase dit que les doc XHTML 1.1 doivent etre envoyé comme du XML... il est donc tout à fait valide d'envoyer un en-tete XML classique : "application/xml"

Dans ce dernier cas, IE comprent l'entete de document et parse le document normalement comme du XML Smiley idee
Modifié le 15 Nov 2004 - 11:14
Au fait, en PHP, pour s'adapter selon le navigateur, j'utilise ce code:

<?php
if(stristr($_SERVER["HTTP_ACCEPT"],"application/xhtml+xml")) $mime = "application/xhtml+xml";
else $mime="text/html";
Header("Content-Type: $mime; charset=iso-8859-1");
echo "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>";
if($mime == "application/xhtml+xml") echo "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.1//EN\"
   \"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd\">\n";
else echo "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\"     \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\n";
?>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<meta http-equiv="content-type" content="<?=$mime?>; charset=iso-8859-1" />
Ok, mais donc aprés le code est normal ?
Je veux dire, du XHTML, le HTML avec les nouvelles spécificités ?

Il n'y a pas obligatoirement de XML ?

Si je met ton code par exemple sur www.jsand.net, je suis réglo ?