28172 sujets

CSS et mise en forme, CSS3

Bonjour,

Voilà le problème,

J'affiche un tableau dans lequel certaines lignes sont invisibles ( pour cela j'ai définit la classe : tr.notVisible dans le css. Voici ce que ça donne dans le css :

table tr.notVisible {display:none; }


D'autre part pour la dernière d'un tableau j'utilise un style particulier permettant de faire un bord arrondi. Voici ce que ca donne dans le css :

table tr:last-child>td:first-child {
background: url('img/rc-botleft-t.png') left bottom no-repeat;
}



Mon problème intervient lorsque je veux appliquer un style arrondi, sur la dernière ligne visible. j'ai essayer ça, mais ca ne fonctionne pas :

table tr.visible:last-child>td:first-child

Est-il possible d'appliquer last-child à une classe, ou bien ceci ne fonctionne que sur les balises.
Merci.
Bonjour,

Le dernier TR qui porte la classe "visible" est-il le dernier enfant? Si ce n'est pas le cas, c'est à dire s'il est suivi par d'autres TR qui auraient une classe différente (ou pas de classe), alors :last-child ne correspondra pas à cet élément et c'est normal.

À voir aussi: le support de :last-child (CSS3) est encore partiel.
http://reference.sitepoint.com/css/pseudoclass-lastchild
Merci pour ta réponse.

Le dernier TR qui porte la classe "visible" n'est pas le dernier enfant, d'autres TR suivent mais ceux-ci sont invisibles.

Donc selon toi, il n'est pas possible d'identifier le dernier TR portant la classe "visible" dans le css, pour lui appliquer un style particulier?
gary59 a écrit :
Donc selon toi, il n'est pas possible d'identifier le dernier TR portant la classe "visible" dans le css, pour lui appliquer un style particulier?

À priori non, même en CSS3 (mais il faudrait vérifier pour les sélecteurs CSS3, il y en a des assez complexes).

Ça peut se faire, par contre, en JavaScript.