IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Mise en page CSS Discussion :

Faire passer une variable à un CSS, est-ce possible?


Sujet :

CSS

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 200
    Points : 66
    Points
    66
    Par défaut Faire passer une variable à un CSS, est-ce possible?
    Bonjour,

    L'intitulé n'étant peut-etre pas asssez clair, je recommence en détail.
    Un site traite de plusieurs thèmes et possède donc plusieurs couleurs (un code couleur par univers, il y en a 7). J'aimerais que ces couleurs soient définies dans le css selon l'univers dans lequel on se trouve.
    Pour cela je pense au PHP mais ne voit pas comment faire pour passer la condition :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SI univers01 
     ALORS couleur #000000
    SINON SI univers02
     ALORS couleur #FFFFFF
    etc.
    bref, est-ce que ça existe les conditions en faisant passer des variables pour les CSS?
    Merci de votre aide

  2. #2
    Membre habitué Avatar de kodokan
    Profil pro
    Lycéen
    Inscrit en
    Avril 2006
    Messages
    127
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Avril 2006
    Messages : 127
    Points : 170
    Points
    170
    Par défaut
    Salut

    Tu n'est pas dans le bon forum ici , va plutot voir dans le forum php

    N'oubliez pas de voir les
    quand la réponse vous convient, un pt'it serait le bienvenu
    Mon site de blogs
    Kodokan arena [ en construction ]

  3. #3
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 868
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 868
    Points : 16 258
    Points
    16 258
    Par défaut
    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?
    if(tacondition){
       $color = "#f00";
    }
    else{
       $color = "#00f";
    }
    ?>
    <div style="background:<?=$color?>">bla</div>

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 200
    Points : 66
    Points
    66
    Par défaut
    PHP je connais je te remercie kodokan, le problème est du coté CSS.
    Est-ce que je peux établir des conditions dans une feuille de style? et comment récupérer la variable qui vient de la page html dans une CSS?

    Si je poste sur le forum PHP, ils vont me renvoyer ici. tiens ça me rapelle quelque chose....

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 200
    Points : 66
    Points
    66
    Par défaut
    Salut Jos,
    merci de ta réponse, j'y ai pensé mais je ne peux pas utiliser la variable (ou son équivalent) dans le fichier css....
    je voudrais en fait, respecter les normes w3c, qui excluent (à court terme) les attributs "style". je sais, c'est chiant.
    peut-ettre que je demande l'impossible ?

  6. #6
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 868
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 868
    Points : 16 258
    Points
    16 258
    Par défaut
    @miltonis : Heu, intégrer du PHP à une feuille de styles c'est impossible il me semble. ^^
    Déjà que Dreamweaver met une erreur sur le code que je t'ai fourni ...

  7. #7
    Membre habitué Avatar de kodokan
    Profil pro
    Lycéen
    Inscrit en
    Avril 2006
    Messages
    127
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Avril 2006
    Messages : 127
    Points : 170
    Points
    170
    Par défaut
    Ben là je mis connais pas trop mais si tu enregistre ta page en tant que "mapage.css.php" et que tu rajoute des conditions dedans ... Ensuite tu peux faire un include dans le head.Pour récupérer tes variables dans ton css tu fais tes requetes avant le include .

    Encore une fois je ne suis pas sur, il faudrai que tu teste

    N'oubliez pas de voir les
    quand la réponse vous convient, un pt'it serait le bienvenu
    Mon site de blogs
    Kodokan arena [ en construction ]

  8. #8
    Modérateur
    Avatar de blueice
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2003
    Messages
    3 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 487
    Points : 5 134
    Points
    5 134
    Par défaut
    Oui tu peux très bien mettre mettre du PHP dans une CSS à condition de mettre l'extension .php à la place de .css, mais aussi de déclarer le document :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <?php header("Content-type: text/css; charset=UTF-8"); ?>

    Tout comme HTML, un fichier CSS peut-être rendu dynamique, et voir son contenu totalement intégré à un possible back-office : l'administrateur du site n'a donc plus à fignoler avec un éditeur de texte pour modifier une couleur.


    Pour convertir un fichier CSS en PHP, il suffit de passer son extension en .php (de style.css à style.php, par exemple), et de mettre en toute première ligne l'entête HTTP suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php header("Content-type: text/css"); ?>
    Le modèle de page HTML appellera ensuite directement le fichier via une balise link:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <link rel="stylesheet" type="text/css" media="screen" href="style.php">
    Le contenu de style.php peut dès lors être parfaitement dynamique :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?php
    header("Content-type: text/css");
    require_once("options.php");
    ?>
    body {
    background: <?=$cssBodyBackground ?>;
    color: <?=$cssBodyColor?>;
    }
    h1, h2, h3, h4 {
    color: <?=$cssHColor?>;
    }
    blockquote {
    color: <?=$cssBlockquoteColor ?>;
    }
    Attention cependant : le fichier CSS devra être généré à chaque chargement de page, et non "caché" en mémoire comme tout fichier statique. Une CSS dynamique doit donc répondre à un besoin précis.

    Une solution serait, alors, d'ajouter un entête au fichier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php header("HTTP/1.0 304 Not Modified"); ?>
    Le code 304 permet d'indiquer au navigateur que la page n'a pas été modifiée depuis le dernier chargement, et qu'il peut donc utiliser la version stockée dans son cache...
    -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_SIGNATURE -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-
    Dans la mesure du possible, essayez de montrer votre problème en situation réelle en nous donnant une url, que l'on puisse tester.
    Pensez également à cocher

    Aucun problème ne doit être résolu en MP (Message Privé) le forum est là pour ça.

    Dimension Internet

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 200
    Points : 66
    Points
    66
    Par défaut
    génial!
    c'est tout à fait ce que je cherchais!
    merci de vos réponses

  10. #10
    Membre habitué Avatar de kodokan
    Profil pro
    Lycéen
    Inscrit en
    Avril 2006
    Messages
    127
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Avril 2006
    Messages : 127
    Points : 170
    Points
    170
    Par défaut
    pense à mettre

    bonnes continuations

    N'oubliez pas de voir les
    quand la réponse vous convient, un pt'it serait le bienvenu
    Mon site de blogs
    Kodokan arena [ en construction ]

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. faire passer une variable dans du texte
    Par lloyd_r dans le forum MATLAB
    Réponses: 2
    Dernier message: 06/03/2009, 17h29
  2. [AJAX] Faire passer une variable AJAX dans autre chose qu'un <div></div>
    Par fixbraun dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 19/02/2009, 14h34
  3. [AJAX] Faire passer une variable $_FILE par AJAX
    Par Mazike dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 06/03/2007, 12h22
  4. [xsl / Php] faire passer une variable XSL en PHP
    Par klowlead dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 24/05/2006, 12h59
  5. faire passer une variable d'une fct js à une page php
    Par harlock59 dans le forum Langage
    Réponses: 1
    Dernier message: 25/11/2005, 14h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo