Écrire une page xHTML 1.1 qui affiche :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr"> <head> <meta http-equiv="Content-type" content="text/html; charset=UTF-8" /> <title>Page en xHTML 1.1 Strict et encodage caractères en UTF-8</title> </head> <body> <h1>Page en xHTML 1.1 Strict et encodage caractères en UTF-8</h1> <p>ceci est le corps de mon document<br /> c'est du xHTML1.1 strict avec encodage de caractères précisé en unicode UTF-8</p> <p>C'est la bonne pratique du WEB moderne,<br /> En contre partie je devrais</p> <ul> <li>Écrire les balises en lettres minuscules,</li> <li>respecter la casse sur les attributs des balises,</li> <li>fermer toutes les balises y compris celles qui n'ont pas de contenu,</li> </ul> <p>Ces contraintes ne sont pas énormes et <strong>respecter la norme est un point important</strong>.<br /> Désormais je ferai en sorte de respecter cette norme. La liste des balises et attributs ainsi que le contexte d'utilisation est disponible sur <a href="http://giminik.developpez.com/xhtml/html.html">ce site</a>. je m'y rendrai à chaque fois que j'aurai un doute. De plus pour m'assurer de la qualité des pages générées, je les validerai systématiquement sur le <a href="http://validator.w3.org/check">site du W3C</a>.</p> <p><a href="http://validator.w3.org/check?uri=referer">page xHTML validé !</a></p> </body> </html>
À partir de la structure de la page de l'exercice précédent écrivez une page xHTML utilisant un autre type d'encodage :
Au chargement de la page que remarquons nous ?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr"> <head> <meta http-equiv="Content-type" content="text/html; charset=ISO-8859-15" /> <title>Test d'erreur d'encodage UTF-8 ISO-8859-15.</title> </head> <body> <h1>Test d'erreur d'encodage UTF-8 vers ISO8859-15.</h1> <h2>Dans ce test le texte est produit en <em>UTF-8</em> et est visualisé en <em>ISO8859-15</em>.</h2> <p>Voici une lettre <samp>é</samp> : <samp>é</samp>.</p> <p>Voici une lettre <samp>Œ</samp> : <samp>Å’</samp>.</p> <h2>Pas beau le é</h2> <p><a href="http://validator.w3.org/check?uri=referer">page xHTML valide !</a></p> </body> </html>
Les caractères accentués sont représentés sous forme de plusieurs caractères : é devient é,
les entités HTML sont préservées.
À partir de l'exercice précedent écrivez une page xHTML semblable ecxepté sur le type d'encodage :
Au chargement de la page que remarqons-nous ?
La solution présentée ici aboutit à une page qui nest pas valide car elle contient des caractères UTF-8 erronés.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr"> <head> <meta http-equiv="Content-type" content="text/html; charset=UTF-8" /> <title>Test d'erreur d'encodage ISO-8859-15 vers UTF-8</title> </head> <body> <h1>Test d'erreur d'encodage <em>ISO-8859-15</em>/<em>UTF-8</em>.</h1> <h2>Dans ce test le texte est produit en <em>ISO-8859-15</em> et est visualisé en <em>UTF-8</em>.</h1> <p>Voici une lettre <samp>É</samp> : <samp>É</samp>.</p> <p>Voici une lettre <samp>Œ</samp> : <samp>¼</samp>.</p> <h2>Pas beaux le <em>é</em> et le <em>Œ</em></h2> <p><a href="http://validator.w3.org/check?uri=referer">cette page xHTML devrait être invalide !</a></p> </body> </html>
Les caractères accentués sont représentés sous forme de losange avec un ? : é devient �,
les entités HTML sont préservées.
Il faut que l'entête Content-Type: text/html; charset=utf-8 soit envoyée,
pour cela on peut agir :
AddCharset UTF-8 .html
AddDefaultCharset UTF-8
Écrire un page xHTML contenant les caractères spéciaux faisant partie de la syntaxe XML :
Écrire également quelques caractères spéciaux sous forme d'entités HTML :
pourquoi les caractères <, > et & doivent impérativement être écrits ainsi pour pouvoir s'afficher correctement ?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr"> <head> <meta http-equiv="Content-type" content="text/html; charset=UTF-8" /> <title>Encodage des caractères spéciaux.</title> </head> <body> <h1>Encodage des caractères spéciaux</h1> <p>Je dois utiliser les caractères spéciaux &nom_entité; pour écrire un caractère sans qu'il ne soit interprété comme élément de syntaxe du <acronym xml:lang="en" title="Hyper Text Markup Language">HTML</acronym>.</p> <p>quelques caractères spéciaux :<br /> inférieur : <<br /> supérieur : ><br /> et commercial: &<br /> PI (lettre grecque utilisée en maths) : π<br /> etc... </p> <p>Je peux utiliser les caractères spéciaux &nom_entité; pour écrire un caractère accentué afin qu'il soit interprété sans tenir compte de l'encodage des caractères.</p> <p>quelques caractères accentués :<br /> e accent aigu : é = é<br /> A accent grave : À = À<br /> i tréma : ï = ï<br /> o accent circonflexe : ô = ô<br /> u accent circonflexe : û = û<br /> o e dans l'o :œ = Å“<br /> a e dans l'a :æ = æ</p> <p><a href="http://validator.w3.org/check?uri=referer">page xHTML validé !</a></p> </body> </html>
car comme ceci est dit dans l'énoncé, ils font partie de la syntaxe du langage.