Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Class CSS par défaut sauf un cas

1 view
Skip to first unread message

Dominique Ottello

unread,
Jun 24, 2010, 11:37:24 AM6/24/10
to
Bonjour,

Voilà le problème sur lequel je bute.

Soit une structure :
<div id='brdmenu'>
<ul>
<li><a href=....>...</a></li>
<li><a href=....>...</a></li>
<li><a href=....>...</a></li>
.........
un seul li avec une classe
<li class='isactive'><a href=....>...</a></li>
..........
<li><a href=....>...</a></li>
</ul>
</div>

Je voudrais appliquer une classe pour tous les <a...>..</a> SAUF pour
celui qui est précédé par <li class='isactive'>

En CSS uniquement, je ne trouve pas. (Ou alors j'ai mal cherché)

Merci.
--
Ce n'est pas parce que l'erreur se propage qu'elle devient vérité. Gandhi
Technologie aéronautique : http://aviatechno.free.fr (http://ottello.net)
Concorde dans la presse de 1965 à 2003 : http://le.pointu.free.fr

Lea Gris

unread,
Jun 24, 2010, 12:10:29 PM6/24/10
to
Le 24/06/2010 17:37, Dominique Ottello a écrit :
> Bonjour,
>
> Voilà le problème sur lequel je bute.
>
> Soit une structure :
> <div id='brdmenu'>
> <ul>
> <li><a href=....>...</a></li>
> <li><a href=....>...</a></li>
> <li><a href=....>...</a></li>
> .........
> un seul li avec une classe
> <li class='isactive'><a href=....>...</a></li>
> ..........
> <li><a href=....>...</a></li>
> </ul>
> </div>
>
> Je voudrais appliquer une classe pour tous les<a...>..</a> SAUF pour
> celui qui est précédé par<li class='isactive'>
>
> En CSS uniquement, je ne trouve pas. (Ou alors j'ai mal cherché)

En CSS3 :

a:not(li.inactive>a) { ... }

Voir ici :
<http://www.w3.org/Style/css3-selectors-updates/WD-css3-selectors-20010126.fr.html#negation>

--
Léa Gris

Olivier Masson

unread,
Jun 24, 2010, 12:11:36 PM6/24/10
to
Le 24/06/2010 17:37, Dominique Ottello a écrit :

> Je voudrais appliquer une classe pour tous les<a...>..</a> SAUF pour
> celui qui est précédé par<li class='isactive'>
>
> En CSS uniquement, je ne trouve pas. (Ou alors j'ai mal cherché)
>
> Merci.

li:not(.isactive) a { } // fonctionne aussi avec des id, bien sûr
C'est ok sur FF, Op, Cr, et... tu devineras jamais sur quel navigateur
ça ne fonctionne pas (trop) :)

En fait, sur IE8, c'est buggy :
:not(.class) {}
<div></div>
ne fonctionne pas, mais
:not(.class) {}
<div class='class'></div>
fonctionne. Donc, dans ton cas, ça devrait passer.

Cf. http://www.w3.org/TR/css3-selectors/#negation

yamo'

unread,
Jun 25, 2010, 7:14:13 AM6/25/10
to
Salut,

Dominique Ottello a tapoté, le 24/06/2010 17:37:


> Je voudrais appliquer une classe pour tous les <a...>..</a> SAUF pour
> celui qui est précédé par <li class='isactive'>

Le plus simple serait de mettre un style sur #brdmenu ul li directement.

Et ensuite de mettre un style différent sur #brdmenu ul li.isactive.


--
Stéphane
http://pasdenom.info

Dominique Ottello

unread,
Jun 25, 2010, 10:22:16 AM6/25/10
to
yamo' <ya...@replyto.invalid> écrivait :

> Le plus simple serait de mettre un style sur #brdmenu ul li directement.
>
> Et ensuite de mettre un style différent sur #brdmenu ul li.isactive.

Merci à tous. En fin de compte, c'est ce que j'ai fait en attendant que
CSS3 soit supporté correctement.

0 new messages