Page 1 sur 1

FF et le XML

Publié : 20 févr. 2004, 21:10
par Kropotkine
Je me suis lancé dans la programmation en commancant par le XML.
Mais quelle ne fut pas ma surprise quand j'ai vu que FF ouvrait mes pages XML sans feuilles de styles, rien quoi !, et qu'IE ne m'affichait que l'arborescence :shock: ! Alors si qqun pouvait m'aider, merci !

Publié : 20 févr. 2004, 21:22
par Benoit
Heu eh bien il faut l'attacher ta feuille de style :)

Publié : 20 févr. 2004, 21:32
par Kropotkine
je l'ai fait et toujours rien :( :? :( :?
j'ai trouvé un site avec la feuille de style displayidentical.msxsl
et toujours rien !

Publié : 20 févr. 2004, 23:56
par Monique
Bonjour,

Une discussion sur le sujet (problème de namespace) http://www.geckozone.org/geckoforum/vie ... php?t=2713

Un lien intéressant aussi : des réflexions de Dave Hyatt sur les navigateurs laxistes relativement aux erreurs XML http://weblogs.mozillazine.org/hyatt/ar ... tml#004766

Et cette réponse sur la liste [pompeurs-css]
Monique Brunel wrote:

| Ben justemment, j'en viens et j'ai essayé
| http://www.w3.org/XML/Test/faq.xml
| qui s'affiche correctement avec IE 6
| et pas avec Mozilla 1.7 ni Firefox


Sans vouloir taper sur le W3C ... c'est de leur faute :

Dans ce template là la balise html est bien définie avec le bon namespace :
<xsl:template match="/">
<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
<xsl:apply-templates/>
</html>
</xsl:template>

Par cotnre dans les suivants le namespace par défaut n'est pas précisé,
Mozilla réagi comme il le doit et n'attribut pas le namespace xhtml par
défaut :
<xsl:template match="faq">
<head>
<title><xsl:value-of select="head/title"/></title>
<link href="/StyleSheets/activity-home.css" rel="stylesheet"
type="text/css"/>
</head>
<body>


<head> <body> et les autres ne sont donc pas des balises XHTML, le rendu
XHTML n'est pas appliqué. Par contre les balises sont bel et bien
insérées (sélectionnes le texte de la page faq.xml, puis "view selection
source" et tu verras une mise en forme XHTML. Tout ce qu'il manque c'est
un espace de nom par défaut. Au lieu de le déclarer dans le premier
template il aurait fallu le faire dans la balise parent, c'est à dire
dans <xsl:stylesheet>

C'est (encore) MSIE qui a tort sur ce coup là en affichant du HTML

--
Eric Daspet

Publié : 20 févr. 2004, 23:58
par Kropotkine
moi le haut de mes pages c'est :
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

A par ca moi je suis creve, je lirai ton article demain Monique mais merci !

A demain tous !

Publié : 21 févr. 2004, 00:25
par PsyDk
Kropotkine a écrit :moi le haut de mes pages c'est :
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
Ah ça c'est du xhtml :)

Voici un document de base xhtml avec appel à une feuille de style :

Code : Tout sélectionner

<?xml version="1.0" encoding="iso-8859-15"?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
	<title>Title</title>
	<link rel="stylesheet" title="Mon style" href="style.css" />
</head>
<body>

</body>
</html>

Publié : 21 févr. 2004, 13:47
par Kropotkine
Merci !

Publié : 11 mars 2004, 12:48
par pascal63
essaye avec ça et à toi de créer les 2 fichiers en connaissant un minimum les quelques différences entre l'interprétation des commandes css entre les 2 navigateurs :
<!--This javascript determines which stylesheet to load based on the browser -->
<script type="text/javascript">
<!--
var browserName=navigator.appName;
if (browserName=="Microsoft Internet Explorer")
{
document.write('<link rel="stylesheet" href="styles/stylesheet.css" type="text/css">')
}
else {
document.write('<link rel="stylesheet" href="styles/stylesheet_ns.css" type="text/css">')
}
//-->
</script>

Publié : 11 mars 2004, 12:54
par Kropotkine
C'est gentil mais j'ai fait des feuilles styles en XSLT qui vont mieux que les CSS, mais grace à benoit et à bobo, tout fonctionne !