Bonjour!

je suis en train de tester le XSL pour mes futur projet.

J'ai créer un fichier XML et une feuille XSL.

sous ie cela s'affiche les textes sont en gras... mais pas sur Firefox.
j'ai fais une petite recherche mais cela n'a rien donné de satisfaisant !

ex: http://www.clubic.com/forum/programmation/xml-pb-d-affichage-de-fichier-xml-sous-firefox-id172822-page1.html

Voici mes fichiers ->


Mon fichier Xml


<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="test.xsl"?>

<page>

	<paragraphe>
		<gras>
		Vous voulez un site sans surprise, tout compris réalisé
		dans les moindre de delai, simple à mettre à jour en toute
		indépendance ?
		</gras>
	</paragraphe>


	<paragraphe><orange>Nos Pack sont faits pour vous.</orange></paragraphe>


	<paragraphe>
		Bénéficier de notre <gras>savoir-faire</gras> dans un site à <gras>vos couleurs</gras>
	</paragraphe>


	<paragraphe>
		Vos clients et prospects feront une agréable visite sur votre espace grâce à 
		une navigation simple et direct.<paragraphe> </paragraphe> Si vous désirez une présence encore plus 
		personnalisée nous pouvons concevoir votre site <gras>"sur mesure"</gras> et de service adaptés à vos besoins,
		sont à voter disposition.
	</paragraphe>


	<paragraphe>
		Quel que soit voter choix, un grand nombre d'<gras>options</gras> et de services adaptés à vos besoin, 
		sont à votre disposition.
	</paragraphe>

</page>



Mon fichier xsl

<?xml version="1.0" encoding="ISO-8859-1" ?>

<xsl:stylesheet version="1.1" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">

<html lang="fr" xml:lang="fr" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>XSLT</title>
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1" />
<!-- <link rel="stylesheet" type="text/css" href="test.css" /> -->
</head>

<body>

<xsl:apply-templates select="page/paragraphe"/>

</body>
</html>
</xsl:template>


<xsl:template match="paragraphe">
<p><xsl:apply-templates/></p>
</xsl:template>


<xsl:template match="gras">
<b><xsl:value-of select="."/></b>
</xsl:template>


<xsl:template match="orange">
<p><xsl:value-of select="."/></p>
</xsl:template>

</xsl:stylesheet>
Désolé pour la mise en page du précédent message !
ne peut on pas rééditer un message ?

en faite ça fonctionne seulement quand je retire la ligne suivante dans la balise
html !

xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"

Mais si quelqu'un à une explication si je n'ai pas suivui quelque chose,
je suis preneur !


Merci ^^
c'est normal.. Firefox et IE n'interprète pas de la même manière tes balises <b>.

-première solution : essayes avec des balises <strong>

-deuxième solution : met un css sur le fichier de rendu final pour mettre ton texte en gras ou écrit ton css directement dans la balise <b>

et pour rééditer un message clique sur "éditer" en, haut a droite de ton message.
Modifié par freezystem (20 Nov 2009 - 12:55)
Bonjour,

Tu ne dois pas spécifier le "name space" dans une balise (même si c'est ta balise racine...) MAIS dans ta déclaration xsl:stylesheet (je suis sûr que tu dois avoir des attributs xmlns partout...)

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns="http://www.w3.org/1999/xhtml">
<xsl:output standalone="yes" method="xml" omit-xml-declaration="yes" encoding="ISO-8859-1" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" indent="no" />

Ce code te permet en plus de mettre un DOCTYPE à ta page résultat (mais ce n'est pas le bon si tu utilises les balises <b> Smiley biggrin )
- "xmlnx:xsl=" : pour les balises commençant par <xsl:xxxxx>
- "xmlns=" : pour les balises sans espace de nom (xmlns veut dire xml name space, ie espace de nom des balises xml)

Quelques cours
- http://www.zvon.org/xxl/XSLTutorial/Output_fre/index.html
- http://xml.developpez.com/faq/?filtre=NNON#sect3


David

PS : il est toujours préférable de faire la transformation côté serveur et non pas côté client (implémentation différente selon navigateur)