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

PHP & Base de données Discussion :

LIGNES ALTERNEES PHP CSS


Sujet :

PHP & Base de données

  1. #1
    Membre averti
    Inscrit en
    Mars 2009
    Messages
    45
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 45
    Par défaut LIGNES ALTERNEES PHP CSS
    Bonjour,
    Je souhaite créer une liste avec style alterné (changement d'image 1 fois sur 2) issue d'enregistrement d'une base de données.

    Je dois agir uniquement sur le <a href="#"> du <li>.
    Dans ma feuille de style #liste a, j'ai actuellement mon background-image: url(../images/1.png
    je souhaite, 1 fois sur 2, avoir mon background-image: url(../images/2.png
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <li><span id="liste"><a href="#">M. <?php echo $row_rsEntFro['NomFr']; ?></a></span></li>
    Je suis à la recherche d'une solution adaptée à cette situation.

    Merci

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 77
    Par défaut
    Tu crées deux classes CSS différentes et tu utilises le modulo pour gérer l'alternance.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <li><span id="liste"><a href="#" class="image-<?php echo $i++ % 2; ?>">M. <?php echo $row_rsEntFro['NomFr']; ?></a></span></li>
    Penses à définir $i avant l'entrée dans la boucle.
    Dans ton CSS tu auras quelque chose de ce genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    #liste a.image-0 {
        background-image: url(../images/1.png);
    }
    #liste a.image-1 {
        background-image: url(../images/2.png);
    }

  3. #3
    Membre Expert
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Par défaut
    Salut,

    Un Id designe un élément unique dans le document. Dans ton cas, nous pourrions l'associer à la liste (<ul>) entière.

    Si nous définissons le style de la liste ainsi...
    Code css : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    #liste a{background-image:url('../images/1.png');}
    #liste a.odd{background-image:url('../images/2.png');}
    Le code XHTML ressemblera à ceci...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <ul id="liste">
    	<li><a href="#">Lien 1</a></li>
    	<li><a href="#" class="odd">Lien 2</a></li>
    	<li><a href="#">Lien 3</a></li>
    	<li><a href="#" class="odd">Lien 4</a></li>
    </ul>
    Pour ce faire, on utilise (comme l'a souligné Blount) l'opérateur arithmétique % (modulo).
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?php
    $i=0;
     
    // Et dans la boucle...
    echo '<li><a href="#"'.(($i++ % 2)?' class="odd"':'').'>M. '.$row_rsEntFro['NomFr']."</a></li>\n";
    ?>

  4. #4
    Membre averti
    Inscrit en
    Mars 2009
    Messages
    45
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 45
    Par défaut
    Bonsoir,

    Grâce à vos précieux conseils
    , ma patience a été récompensée.
    J'ai utilisé avec succès vos codes accompagnés de vos explications.

    Merci à vous

    Je peux maintenant passer à la suite.

  5. #5
    Expert confirmé

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Par défaut
    sinon ca se fait direct en CSS3 si t'as pas envie de bidouiller.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    #liste a:nth-of-type(2n+1) {
    }

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

Discussions similaires

  1. comment revenir a la ligne en PHP
    Par mekdar dans le forum Langage
    Réponses: 15
    Dernier message: 26/10/2015, 11h39
  2. Création RPG en ligne en PHP/Flash - Système Innovant!
    Par spykiller dans le forum Projets
    Réponses: 12
    Dernier message: 25/09/2009, 00h06
  3. PHP/CSS:affichage seulement si j'entre "index.php"
    Par midiweb dans le forum Langage
    Réponses: 6
    Dernier message: 14/02/2007, 14h20
  4. pb d'affichage en php / css
    Par Gilles17 dans le forum Flash
    Réponses: 6
    Dernier message: 12/02/2007, 22h20
  5. [PHP/CSS] liens vus->non vus apres une MAJ
    Par epoz dans le forum Langage
    Réponses: 2
    Dernier message: 13/12/2005, 15h08

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