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 :

Factoriser un ensemble de règles CSS


Sujet :

CSS

  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2018
    Messages : 16
    Par défaut Factoriser un ensemble de règles CSS
    Bonjour, je suis actuellement en train de développer un site de visualisation de données et je me suis questionné sur la faisabilité d'une règle CSS.

    Mon but est ici d'afficher des données dans un graphe (en utilisant du SVG) comme on peut le voir dans la figure ci-dessous:
    Nom : exemple.PNG
Affichages : 139
Taille : 9,0 Ko

    Dans le graphe chaque "donnée" est représentée par un point et chaque point est lié à un rectangle d'information.
    Ce que je veux c'est faire en sorte que lorsque je survole un point, le rectangle associé s'affiche.

    Je précise que le graphe est construit depuis un script PHP et que le nombre de données dépendra du contenu d'une base qui évoluera dans le temps.

    Ici ce que je compte faire c'est attribuer à chaque point un id de la forme : "#p0, #p1, #p2, etc".
    Les rectangles auront un id de la forme : "#r0, #r1, #r2, etc".

    Alors avec une boucle PHP je pourrais facilement faire une chose du genre :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    echo "<style>";
     
    for($i=0; $i<$length; $i++){
        echo "#r".$i."{
                           display: none;
                 }";
     
        echo "#p".$i.":hover ~ #r".$i."{
                           display: block;
                 }"; 
    }
     
    echo "</style>";

    Seulement, je me demandais s'il y avait une façon d'arriver au même résultat mais de manière plus élégante.
    Merci d'avance

  2. #2
    Membre émérite
    Homme Profil pro
    Autre
    Inscrit en
    Juillet 2021
    Messages
    436
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Autre

    Informations forums :
    Inscription : Juillet 2021
    Messages : 436
    Par défaut
    Bonjour,

    Défini une classe css commune pour tous les éléments points et une autre classe css commune pour tous les éléments rectangles, puis utilises ces classes css pour définir la règle css avec hover.

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2018
    Messages : 16
    Par défaut
    Ho oui merci j'avais pas directement vu ça sous cet angle.
    Bon alors si jamais quelqu'un se pose la question, j'ai enlevé tous les ids que j'ai utilisé auparavant.

    Les points font tous partis d'une classe '.point' et les rectangle eux d'une classe '.info'.
    Et donc comme dans le code produit par le script PHP chaque point est suivi par son rectangle d'information on peut simplement écrire ça en CSS:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    .info{
        display: none;
    }
     
    .point:hover + .info{
        display: block;
    }
    Voilà

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 11/06/2010, 12h14
  2. Affectation d'une règle CSS externe avec javascript
    Par DexterV dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 08/04/2010, 17h46
  3. Règles CSS avec IDs dynamiques
    Par pitxu dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 03/11/2009, 14h40
  4. Comparaison de deux ensemble de règles
    Par hnouna2007 dans le forum Intelligence artificielle
    Réponses: 4
    Dernier message: 11/02/2009, 10h08

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