Exercice de style XML/XSLT - XML/XSL - Programmation
Marsh Posté le 14-12-2017 à 23:21:09
Bonsoir,
En ce qui concerne le xsl, j'aurais écrit cela ainsi:
Code :
|
Bon, j'ai fait du xsl 2.0 parce que ceci ne semble pas autorisé en 1.0: select="Auteur,Date,Type,Lieu" et que c'est pratique.
Et ça marchait avec FireFox (je doute que FF accepte le xsl 3.0, que j'utilise quotidiennement, mais je n'ai pas testé).
En ce qui concerne le xsl, j'ai remplacé les xsl:copy-of par des xsl:apply-templates (comme cela ne porte que sur du texte pur, les règles par défaut feront qu'il y a aussi copie), cela étant plus dans l'esprit xsl (et peut être un poil plus optimisé).
J'ai rendu le title générique, et ai mis les styles en tête (ils pourraient être dans une css externe, sauf la règle pour body, l'image étant spécifique à la page je pense), en jouant sur les classes quand nécessaire. Ça permet de séparer les règles jouant sur la structure (xsl) de celles jouant sur la présentation (css).
Enfin, j'ai viré les <b/> car je n'en ai pas vu l'utilité, et le <xsl:text>;</xsl:text> est juste la pour clarifier que le ; qui y figure n'est pas une typo.
Pour rendre ça plus joli, il faut voir l'avis des webmasters du forum, ce que je ne suis pas. Et c'est plus au niveau de la CSS qu'au niveau de la XSL que ça devrait se jouer.
A+,
Marsh Posté le 15-12-2017 à 10:59:10
Bonjour,
Merci pour ton aide et ton optimisation de mon fichier xsl !
C'est vrai que ce qu'il me faut maintenant c'est davantage de langage CSS pour vraiment rendre le tout lisible sur l'image, quitte à avoir une style différent pour chaque articles. Je pensais faire des effets de surbrillance, ou jouer sur la transparence, voir simplement sur la couleur du texte et de la calligraphie, mais je pense qu'il en faut plus. Si quelqu'un pouvait me donner quelques solutions avancées en CSS, faisant appel à un langage "avancé", je suis preneur encore une fois.
J'aimerais jouer peut-être davantage également sur la mise en page quitte à créer des cadres pour le texte afin qu'il n’empiète pas sur la fusée.... etc..
Par contre je pense qu'une séparation plus nette entre les articles est possible, mais je n'ai pas encore trouver comment le faire.
Marsh Posté le 15-12-2017 à 16:27:24
Autre remarque sur la structuration des données en xml.
<Prénom> Maurice </Prénom>
<Nom> Arvonny </Nom>
<Date> 24 Mai 1984 </Date>
<Type> Reportage </Type>
<Lieu> Kourou (Guyane) </Lieu>
Les espaces avant et après les tags ici sont complètement inutiles.
<Article1>, <Article2>, <Article3>
Non, <Article> devrait suffire, et au pire, une structure <Article numero="1"> devrait faire l'affaire.
Et homogénéiser cela permet de faire des choses cool, comme le calcul dynamique des nbs de dates et articles.
Code :
|
sur du contenu comme
Code :
|
Enfin, toujours au niveau de la séparation du contenu et de sa présentation, on peut très bien faire pour les titres:
<titre>Les décisions de la conférence spatiale européenne</titre>
et faire faire la mise en majuscule par la CSS
h2 {text-align:center; text-decoration:overline; text-transform: uppercase;}
A+,
Marsh Posté le 15-12-2017 à 18:00:07
A noter que tu ne devrais pas avoir <Article1>, <Article2>... mais que des <Article>
Marsh Posté le 16-12-2017 à 00:06:41
C'est l'objet de mon 2e paragraphe du post précédent
A+,
Marsh Posté le 16-12-2017 à 08:23:10
Oops, pas vu.
Marsh Posté le 13-12-2017 à 09:45:56
Bonjour,
Je souhaite réaliser un exercice de style, c'est-à-dire trouver la meilleure manière de mettre en valeur un texte (3 articles) sur une image en fond de page pour que celui-ci soit lisible et que le rendu soit esthétique. Je code donc mon texte en xml et j'utilise une feuille de style xslt pour le mettre en forme. Mais je ne connais pas assez les possibilités et les codes à utiliser sur xslt pour avoir un très beau produit final. Pouvez-vous m'éclairer et pourquoi pas me donner quelques idées....
Je vous fourni mon code xml, xslt (actuel) ainsi que l'image que je souhaite voir en fond.
Voici la feuille xml :
La feuille xslt :
et l'image de fond :