1

Salut,
je dois afficher une image dont le nom se trouve être dans un attribut d'un élément xml et j'avoue que je bloque. Il n'y a pas possibilité de créer des variables en CSS et je peux pas utiliser de PHP. Donc comment faire ?

Extrait du fichier XML :
<recettes>
<recette>
<nom photo="caipirinha.jpg">Caipirinha</nom>
</recette>
</recettes>


Extrait du CSS que j'ai:
nom {
display:block;
text-align:center;
font-size: 22px;
font-weight: bold;
font-family: serif;
background-image: ???? ; Et C'est la que je bloque ! background-image: url(attr(photo)) ne marche pas
background-repeat:no-repeat;
line-height:500%;
margin-bottom: 1em;
}


Merci de vos réponses/suggestions

2

je savais pas qu'on pouvait faire du XML sans un language de script.
Le HTML ne permet normalement pas d'exploiter des fichiers en lecture ou en ecriture.

3

Bon apparemment soit c'est impossible, soit personne ne sait sad

4

tu generes ton CSS avec une feuilles XSLT, c'est la seule solution que je vois.

5

Oui c'est ce que je pense aussi. Le truc c'est que cet exercice est à faire dans le cadre d'un TP et on a pas le droit d'utiliser de XSLT/HTML etc Donc ce que je pense c'est que la prof ne s'est pas rendu compte que c'était impossible ou a oublié de nous dire quelque chose...ou on est tous nul wink

6

c'est impossible
CSS et XML sont des choses statiques...
Tu peux a la rigueur parser ton XML avec JavaScript et alors afficher, mais je pense pas que c'est ce que veut faire ton prof...

7

Bon j'ai fait un truc un peu lourd mais qui marche...

nom[photo="caipirina.jpg"] {
display:block;
text-align:center;
font-size: 22px;
font-weight: bold;
font-family: serif;
background-image:url("caipirina.jpg");
background-repeat:no-repeat;
line-height:500%;
margin-bottom: 1em;
}

Et je fais la meme chose pour toutes les autres recettes...
Merci en tous cas à ceux qui ont répondu