Page 1 sur 2
variable php dans feuille de style CSS....
Posté : 19 avr. 2005, 13:51
par philjacq
Bonjour à tous,
je cherche à mettre une variable nomée $col dans une feuille de style CSS, j'ai donc écrit :
border-left-color:"<? echo $col; ?>";
mais il y a une erreur de syntaxe... je ne sais pas comment bien inserer cette variable.
Merci à tous de votre aide et j'espère pouvoir vous être utile un de ces quatres ;-)
Posté : 19 avr. 2005, 14:02
par albat
Si ton style est dans un fichier .css, le script php ne sera jamais interprêté.
Sinon, retire les guillemets et teste la valeur de
$col...
border-left-color:<?php echo $col; ?>;
Posté : 19 avr. 2005, 14:03
par albat
Au fait, est-ce que border-left-color est une propriété valide ?
(je demande, parce que je ne l'ai jamais vue ailleurs...)
Posté : 19 avr. 2005, 14:10
par Gentoo Warrior
oui, c'est valide :
border-left-color
Permet de définir la couleur de la bordure gauche d'un élément.
La couleur ne peut être appliquée que si le type de bordure (border-style) ou l'épaisseur de bordure (border-width) a été défini, sans quoi la bordure est inexistante. Certains navigateurs n'interprèteront dailleurs pas les bordures si ces deux propriétés ne sont pas renseignées.
Les couleurs des autres bordures peuvent être définies avec "border-bottom-color", "border-right-color" et "border-top-color" ou à l'aide de "border-color" pour définir toutes les couleurs directement.
Posté : 19 avr. 2005, 14:11
par philjacq
j'ai bien mis le style dans ma page html entre les deux balises <style>, ça me donne en tout :
<style>
.centre {
border-top-width: thin;
border-left-width: thin;
border-top-style: solid;
border-left-style: solid;
border-top-color: #000000;
border-left-color:"<? echo $col; ?>";
}
</style>
J'ai eu beau essayer sans les guillemets, mais à ce moment là le ";" du php est interprété comme une fin de propriété...
propriété qui est tout a fait valide d'alleurs
Ma variable $col fonctionne parfaitement ailleur dans la page, par exemple quand je la met en bgcolor=...
Posté : 19 avr. 2005, 14:11
par charabia
Je confirme, c'est valide
Si tu regardes le code source, au niveau de ta variable tu vois quoi ?
Posté : 19 avr. 2005, 14:43
par philjacq
dans le code source de ma page je vois : border-left-color:"<? echo $col; ?>"; et j'ai bien mon filet gauche, mais avec la couleur par défaut....
Posté : 19 avr. 2005, 14:50
par albat
RE
Quelle est la valeur de $col ?
Posté : 19 avr. 2005, 14:58
par philjacq
la valeur de $col est sous la forme "#xxxxxx"
Posté : 19 avr. 2005, 15:01
par pjl
dans le code source de ma page je vois : border-left-color:"<? echo $col; ?>"; et j'ai bien mon filet gauche, mais avec la couleur par défaut....
et c'est quoi l'extension de ton fichier ?
Posté : 19 avr. 2005, 15:03
par philjacq
c'est un html qui est inclu dans un php, mais les autres variable sous la même forme dans le html passent parfaitement.
Posté : 19 avr. 2005, 15:15
par charabia
c'est un html qui est inclu dans un php, mais les autres variable sous la même forme dans le html passent parfaitement.
mmmhhhh je ne saisis pas trop bien...un html inclu dans un php ?
En fait ta page a bien l'extension .php ? Parce que là si tu vois affiché <? echo $xxx; ?> c'est que le serveur ne reconnait pas le php...

Posté : 19 avr. 2005, 15:31
par philjacq
OK, je sors...
en fait, en enlevant le "", et même si le ; était interprété dans la page html, il ne l'est plus lorsque celle ci est incluse dans une php. Don il fallait écrire :
.centre {
border-left-width: thin;
border-left-style: solid;
border-left-color:<? echo $col; ?>;
}
En tous cas merci à vous tous, et désolé pour mon cerveau malade...
Posté : 26 avr. 2005, 01:10
par afbilou
Ce n'est pas vraiment la bonne methode pour faire cela :
Code : Tout sélectionner
.classe_generique {
border-top-width: thin;
border-left-width: thin;
border-top-style: solid;
border-left-style: solid;
border-top-color: #000000;
}
.cas1 {
border-left-color: red;
}
.cas2 {
border-left-color: blue;
}
et dans ton fichier php :
$i valant un ou deux suivant les cas.
mmm
Posté : 22 mai 2005, 23:41
par pinchproduction
pourquoi ne pas tester sans les ;
c'est du bidouillage mais bon, ça marche.