Bonjour tous,

J'ai un fichier HTML dans lequel j'appelle une fonction Javascript qui me transforme un XML et HTML :

<head>
...
</head>

<body>
<div id="page">
</div>

<script type="text/javascript">
$(function() {
	$('#page').xslt({xmlUrl: './_xml/fichier.xml', xslUrl: './_xml/fichier.xsl'});
});
</script>

<body>


Jusque là c'est parfait cela fonctionne correctement.

Maintenant dans mon XSL j'ai des balise qui utilise des class d'un CSS.
Ce CSS est déclaré dans mon XSL :

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet>
	<xsl:template match="/">
		<link rel="stylesheet" type="text/css" href="../_css/stylesheet.css" media="all"/>
....
	</xsl:template>
</xsl:stylesheet>


Mon problème c'est que lorsque j'affiche dans un navigateur la page HTML, le CSS n'est pas pris en compte et j'ai pas la bonne mise en page.

Ou dois je déclaré mon CSS pour qu'il soit pris en compte pour des balises incluses dans le XSL ??

Merci de votre Aide,
Misk
Je pense que le CSS est peut être interprété avant ton javascript, dans ce cas la il faudrait mettre le CSS dans la page html et non dans le XSL, à tester.
Hello Kahor,

En effet j'ai testé cette configuration avec CSS dans le doc HTML mais idem, le CSS ne veut toujours pas s'appliquer aux DIV issue du XSL.

Je cherche, je cherche ...

Misk
Ah je comprend mieux, le CSS est appliqué, mais avant que ton XSL ait créer les divs, donc le CSS ne trouve pas les divs en question et ne fait rien dessus.

Tu pourrai essayer de mettre l'appel au CSS (toujours dans le html) après le script qui effectue la transformation XSL, ou même limite mettre le CSS en bout de page. Sinon tu peux voir si recharcher la page automatiquement ne résout pas ton problème.

Je pense que ça devrait marcher.
a écrit :
Tu pourrai essayer de mettre l'appel au CSS (toujours dans le html) après le script qui effectue la transformation XSL


Euh ... je dirais non !
J'ai déjà effectué ce genre de d'opérations : charger un xml et xsl en ajax, transformer le xml avec le xsl , puis injecter le résultat dans une div de la page (si j'ai bien compris c'est ce que tu fais).
Les règles CSS de la page conteneur sont prise en compte pour le HTML générer par javascript.

C'est peut être une remarque bête mais, as-tu bien renseigner l'url de ton CSS par rapport a la page HTML qui contient le tout (devant l'url de la CSS tu as écrit "../" , ça m'a mis la puce a l'oreille).
a écrit :
charger un xml et xsl en ajax, transformer le xml avec le xsl , puis injecter le résultat dans une div de la page (si j'ai bien compris c'est ce que tu fais).


C'est exactement la manip que j'effectue.
En effet j'ai mis "../" car mon CSS est bien un niveau plus haut.

Ce CSS est bien appliquer au reste de ma page (j'ai la bonne mise en forme des éléments hors de la DIV sur laquelle j'injecte le XML transformé) mais pas sur cette DIV en question. Incroyable ...

Je cherche toujours ...