Inclure une variable php dans du css ??

Skycer666

WRInaute discret
Bonjour,

j'aimerai un petit renseignement.

Est-il possible de mettre une variable php ($variable) dans une balise <style>

Exemple :

Code:
<style>
     <?php $page ?>
     {
          color:white;
     }

</style>

Je souhaite réaliser ceci car j'aimerai que dans le menu de mon site, lorsque je me trouve sur une page, cette page soit d'une couleur différente dans le menu. Au lieu de faire plein de test sur la page, ça serait plus simple et plus pratique.

Merci de vos réponses.

FF
 

e-kiwi

WRInaute accro
il te suffit de voir le rendu html de ton code, tu verras que c'est identique à un style claqué en dur en html
il faut quand meme faire un echo $variable...
 

Skycer666

WRInaute discret
Merci pour ta réponse , j'avais oublié le

Code:
echo

Sa fonctionne parfaitement.

Merci et bonne journée
 

nickargall

WRInaute accro
Légèrement Hors sujet, tu peux également faire une feuille de style dynamique.
un script en PHP qui recrache du CSS, avec un entête CSS, et qui peut même être renommé en .css par de la réécriture d'URL.
C'est assez pratique si on en a l'usage.
 

jeroen

WRInaute passionné
nickargall a dit:
Légèrement Hors sujet, tu peux également faire une feuille de style dynamique.
un script en PHP qui recrache du CSS, avec un entête CSS, et qui peut même être renommé en .css par de la réécriture d'URL.
C'est assez pratique si on en a l'usage.

Et ça se passe comment pour gérer le cache ?
 

dmathieu

WRInaute accro
Et ça se passe comment pour gérer le cache ?
Cache navigateur -> A virer. Avec du contenu dynamique, tu va avoir des bugs graphiques.
Cache serveur -> C'est toi qui voit. Regarde Zend Cache par exemple.
 

ckarone

WRInaute occasionnel
Sinon il est possible de faire une page .php qui recrache le css et de mettre le lien style comme ceci:
Code:
<link rel="stylesheet" href="style.php" type="text/css" media="screen,projection">
c'est plus simple!
 

nickargall

WRInaute accro
... d'ou l'utilité d'adopter des paramètres en GET + la réécriture d'URL pour feuille de style CSS; chaque feuille virtuelle aura un nom spécifique. on évite alors le cache navigateur pour une feuille de style dynamique mais qui garderait le même nom
Edit : grilled par une réponse intéressante :)
 

dmathieu

WRInaute accro
Désolé de la réponse rapide. J'ajouterai tout de même que les paramètres HTTP sont préférables.
Supprimer le cache est lourd. On appelle à chaque fois la feuille de style alors que cela n'est pas suffisant.
Place un paramètre HTTP est conserve le cache navigateur par défaut.
 

jeroen

WRInaute passionné
J'ai bien compris qu'il fallait forcer le navigateur à ne pas mettre la feuille CSS en cache, mais le principal atout de séparer la forme et le fond, c'est bien de ne pas devoir retélécharger la forme à toutes les pages, et donc de gagner de la vitesse et de la bande passante non ? Pour moi c'est donc une hérésie de forcer la non mise en cache d'une feuille css.

Vous en pensez quoi ?
 

nickargall

WRInaute accro
je suis plutôt d'accord, d'ou l'utilité de feuilles CSS dynamiques avec des adresses virtuelles :mrgreen:
 

Discussions similaires

Haut