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 :

Valeur par défault et héritage des custom properties [CSS 3]


Sujet :

CSS

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mai 2023
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2023
    Messages : 8
    Par défaut Valeur par défault et héritage des custom properties
    Bonjour,
    J'essaie de comprendre comment marchent les custom properties, et j'ai l'impression de ne m'être trompé quelque part. Je souhaite utiliser les nouvelles variables CSS à leur plein potentiel, c'est à dire comme de véritables propriétés personnalisée. J'essaie de tirer partie de leur héritage et valeur initiale en particulier.

    Disons que j'ai:
    Code css : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    @property --logo-color {
      syntax: "<color>";
      inherits: true;
      initial-value: red;
    }
    .green {
    	--logo-color: green;
    	color: var(--logo-color);
    	& .red {--logo-color: unset}
    }
    Je sais que "color:initial" n'est pas du tout ce que j'attends, parce que la valeur par défaut de la propriété vient de la feuille de style par défaut du navigateur, dont personne n'a rien à f$$$$.
    Mais je pensais que définir "--logo-color: initial" aurait l'effet de retourner à la valeur initiale faisant partie de la définition. Sans quoi, je n'y verrais aucun intérêt !
    Et bien avec ce code plus haut, et disons
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <ul class="green">
    <li><p>green</p></li>
    <li><p>green</p>
          <p class="red">red</p>
    </li>
    </ul>
    Rien ne se passe, tout reste vert.
    Peu importe à quelle valeur je redéfinis la variable le changement n'opère pas, même si le developper tool prend bien note de la nouvelle valeur. Aucun changement quant à "color".

    Est-ce un bug ? Firefox et chromium ont le même comportement pourtant.
    Merci de votre aide !

  2. #2
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 698
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 698
    Par défaut
    je crois que la syntaxe avec "& .red ..." n'est pas du css mais est utilisée avec un préprocesseur comme scss ou less.
    est ce que c'est bien cela que vous utilisez ?

  3. #3
    Membre habitué
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Mai 2023
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2023
    Messages : 8
    Par défaut Résolu
    J'ai compris: les enfants héritent de la valeur de la propriété définie sur le parent (ou ancêtre), mais vu que celle-ci n'a pas été défini sur les enfants eux-mêmes la valeur est figée et non mise à jour quand la custom property change.
    Bon, pas vraiment intuitif, ou plus c'est une logique, mais pas la seule à laquelle on aurait pu s'attendre.

    Pour les gens dans ma position, le plus simple est de bien séléctionner les éléments concernés par les changements de la propriété.
    Comme ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    body, body>nav, header {
      --font-weight: normal;
      --font-size: 1rem;
      --font-family: Roboto;
      --line-height: 1;
      --font: var(--font-weight) var(--font-size)/var(--line-height) var(--font-family);
      font: var(--font);
    }
    Puis changer des composantes de font dans les éléments couverts par les sélécteurs.
    --

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

Discussions similaires

  1. [SSRS]Activer valeur par défault d'un parametre
    Par thinker dans le forum SSRS
    Réponses: 1
    Dernier message: 27/01/2009, 09h09
  2. [Joomla!] Modifier valeur par défault dans publication de contenu
    Par bocherrot dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 09/04/2008, 11h50
  3. Valeur par défault = Enregistrement précédent
    Par Aost dans le forum Access
    Réponses: 8
    Dernier message: 04/07/2006, 22h07
  4. [Liste Modifiable] Problème avec la valeur par défault
    Par fusion_sadam dans le forum Access
    Réponses: 3
    Dernier message: 16/06/2006, 11h00
  5. afficher une valeur par défault dans la combobox
    Par shadow31 dans le forum MFC
    Réponses: 6
    Dernier message: 09/01/2006, 17h25

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