28172 sujets

CSS et mise en forme, CSS3

Bonjour,

Je voudrais donner a un style les définition d'un autre est ce possible ?

J'aimerais pouvoir dire que Style2 hérite des valeurs de Style1 :

.Style1{
border: 1px solid #E0E0E0;
....
}

.Style2 > Style1{
...
}

J'ai pas l'impression que cela soit possible mais je pose la question au cas ou une astuce existe...

Merci d'avance.
Administrateur
Bonjour,

tu as deux possibilités :

- écrire les 2 sélecteurs devant le bloc de règles (on les sépare par une virgule)
.style1,
.style2 {
    margin: 0;
    border: 1px solid #E0E0E0;
    /* ... */
}

ainsi ils sont stylés exactement de la même façon. Puis rajouter aux styles communs ce qui les différencie (ou écraser pour l'un des deux ce qui a précédemment été défini pour les 2):
/* (suite) */

.style1 {
    margin: 10px;
}

.style2 {
    color: red;
}


Autre possibilité: dans le code HTML spécifier les 2 classes.
Ainsi l'élément a à la fois le style de .style1 et de .style2
En cas de conflit (color: blue et red pour l'un et l'autre par exemple), c'est le dernier spécifié qui prend le dessus ; enfin Firebug montre qui écrase qui au cas où.
En fait le but est d'utiliser une feuille de style de ui-jquery mais appliquer ses styles a d'autre élément non prévu dans ui sans toucher la feuille de style ui-jquery car on peux modifier a sa guise ses feuilles et donc il faudrait remodifier a chaque mofdification ou mise à jour ... Smiley decu ...

Mais cela ne semble que l'héritage de class à class n'est pas prévu dans la gestion des feuilles de style.