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

Langage PHP Discussion :

CSS Dynamique sous PHP. echo?


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    155
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 155
    Par défaut CSS Dynamique sous PHP. echo?
    Bonjour,
    j'aimerais savoir si j'ai un moyen de créer des classes sans perturber l'affichage et le style actuel.
    En effet, sous le framework dojo() je souhaite créer dynamiquement des classes css (là j'ai mis un exemple, mais le but c'est d'en faire avec des boucles)
    et il y a un effet indésirable qui se produit par rapport à mon affichage actuel... dès que je mets les echos, tout se déplace vers le bas... y a t'il moyen que ca n'arrive pas? de le faire "discretement" sans perturber l'affichage? C'est pas le role de la petite * qu'on met en début d'echo?
    merci d'avance.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    function build_page()
    {
            function buildClasses()
       {
             echo '<style type="text/css">';
             echo '.pbreducecard   { width:99px; height:33px;background-size:840px; background-position: 0px    -315px;  }';
             echo '</style>';
       }
     buildClasses();
    [... des tas de choses...]
    }

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    C'est pas le role de la petite * qu'on met en début d'echo?
    Tu mets une étoile devant tes echo toi ?

    dès que je mets les echos, tout se déplace vers le bas
    Si ton affichage "à la main" et ton affichage construit en PHP n'ont pas le même rendu, c'est qu'ils le HTML/CSS dans les deux n'est pas identique.
    Si tu compares la source HTML dans les deux cas, tu trouveras le problème.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    155
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 155
    Par défaut
    merci pour ta réponse...
    concernant l'echo, j'ai vu quelquechose du genre echo '* ' une fois... et cette étoile n'avait pas pour vocation d'etre affichée.

    Concernant les fichier HTML... probablement, mais je n'en ai malheureusement pas la maitrise... je développe sur un site qui met a disposition certains fichiers modifiables, mais tout le code n'est pas visible, c'est sous dojo également...

    Si c'est le cas, y a t'il moyen tout de même d'éviter de tout décaler (éventuellement avec autrechose que echo?).
    ai-je déjà un moyen simple d'afficher la source HTML en php (une fonction qui la récupère?)
    et même question pour le javascript (une fonction qui récupère la source)... ?
    il n'y a pas d'indication dans le fichier... j'ai une génération automatique des fichiers en nommant mon projet patati.
    pour le js, j'ai le code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    define([
        "dojo","dojo/_base/declare",
        "ebg/core/gamegui",
        "ebg/counter"
    ],
    function (dojo, declare) {
        return declare("bgagame.patati", ebg.core.gamegui, {
            constructor: function(){
                console.log('patati constructor');
    pour le php ca débute par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <?php
      require_once( APP_BASE_PATH."view/common/game.view.php" );
     
      class view_patati_patati extends game_view
      {
    voilà, au cas où...

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Tu n'as pas compris : PHP ne traite aucun aspect de mise en page ; echo ne fait qu'envoyer ce que tu lui donne.
    Donc s'il y a un problème de mise en page, il est dans ton code HTML final, pas dans le fonctionnement de PHP.

    Tu dois comparer le HTML obtenu maintenant avec celui que tu obtenais avant (dans ton navigateur clique droit, afficher la source). Il y a forcement une différence entre les deux.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    155
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 155
    Par défaut
    Mais il y a bien un moyen de traiter la création de classe sous php tout de même???

    sinon, effectivement,en comparant, le code s'insère tout au début du code de la page:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    function buildClasses()
       	{
            	echo '<style type="text/css">';
            	echo '.card2  {background-color: blu;  }';
            	echo '</style>';
       	}
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <style type="text/css">.card2  {background-color: blu;  }</style><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml"
          xmlns:og="http://ogp.me/ns#"
          xmlns:fb="http://www.facebook.com/2008/fbml"
          xml:lang="fr" lang="fr">
    <head>
    [...]
    CE simple truc rajouté devant crée une déformation dans la hauteur de tout le reste...
    Peut-être que je devrais remettre tout ce qui est devant le <HEAD> .... je vais tenter.

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    155
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 155
    Par défaut
    CA Y EST!!!! ARF JE SUIS CONTENT....
    Suffit seulement de rajouter en fait le doctype!!!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    function buildClasses()
       	{
    		echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">';
            	echo '<style type="text/css">';
            	echo '.card2  {background-color: blue;  }';
            	echo '</style>';
       	}
    VOILA UNE SOLUTION POUR CREER DES CLASSES EN PHP

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

Discussions similaires

  1. CSS dynamiques avec PHP
    Par BRUNO71 dans le forum Langage
    Réponses: 2
    Dernier message: 15/10/2012, 12h25
  2. Un CSS dynamique en PHP ne fonctionnant pas
    Par Tibimac dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 24/05/2010, 17h04
  3. [Article] Des feuilles de style CSS dynamiques avec PHP
    Par Bisûnûrs dans le forum Publications (X)HTML et CSS
    Réponses: 3
    Dernier message: 05/01/2009, 20h48
  4. Des feuilles de style CSS dynamiques avec PHP
    Par Bisûnûrs dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 05/01/2009, 20h48

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