J'ai k enfants de la classe tab_title
, je veux peindre progressivement leur fond de color1
à color2
. Par exemple: Si k = 3, color1 = rouge (# FF0000), color2 = jaune (# FFFF00) puis l'arrière-plan du 1er élément est rouge (# FF0000), pour le 2ème orange (# FF8000) et pour le 3ème est jaune (# FFFF00); k = 5, color1 = blanc, color2 = noir puis 1er est blanc, 2ème est gris25%, 3ème est gary50%, 4ème est gary75% et 5ème est noir.Comment régler progressivement la couleur pour k enfants?
Je veux que cela fonctionne pour tout k
, sans spécifier explicitement le ton pour chaque nth-child()
. Toute façon de faire cela purement avec css ou sass? Puisque la classe peut être ajoutée ou supprimée, je préférerais ne pas impliquer de code JS.
J'utilise le code suivant:
@mixin gradbg($n, $c1, $c2){
@for $i from 1 through $n {
&:nth-child(#{$i}) {
background-color: mix($c1,$c2,((1 - (($i - 1)/($n - 1)))*100%));
}
}
}
puis
li.tab_title{
$from: #097380;
$to: #4da759;
@include gradbg(3,$from,$to);
}
la seule chose qui manque est en quelque sorte compter k
automatiquement donc je peux utiliser gradbg(k,$from,$to)
au lieu de gradbg(3,$from,$to)
Merci une lot,
Guy
comme je le disais, je ne veux pas une solution JS (que je réussi à me mettre en œuvre). css s'il vous plaît. –
Pouvez-vous jouer du violon avec ce que vous avez? Je peux vous aider plus. –
@ Spätzle Je pourrais le faire, son utilisation de javascript à nouveau. Postez votre lien de violon ici, je peux le modifier. –