Hello,
Imaginez le code suivant
Comment feriez-vous pour styler uniquement le premier div.foo ? Sans tenir compte de sa place dans le code, car elle varie en fonction des éléments ajoutés avant.
Je pensais ce problème assez simple, mais finalement je ne parviens pas à trouver de sélecteur permettant de faire cela, même en CSS3.
J'ai naturellement essayé div.wrapper div.foo:first-of-type, mais cela ne fonctionne pas. En fait, cela se traduit pas "selectionner le premier child de div.wrapper uniquement si c'est un div.foo" et non pas "selectionner le premier div.foo de div.wrapper" comme je l'imaginais.
Bon, j'ai la chance d'avoir d'autres classes sur lesquelles me raccrocher, mais il doit y avoir quelque chose qui m'a échappé.
Edit : En jQuery, j'aurais fait $('div.wrapper div.foo:first') mais un tel sélecteur n'existe pas en CSS
Modifié par Tymlis (20 Apr 2010 - 18:02)
Imaginez le code suivant
<div class="wrapper">
<div>blabla</div>
[... divers éléments HTML ajoutés ici...]
<div class="bar">bar</div>
<div class="foo">foo</div>
<div class="bar">bar</div>
<div class="foo">foo</div>
</div>
Comment feriez-vous pour styler uniquement le premier div.foo ? Sans tenir compte de sa place dans le code, car elle varie en fonction des éléments ajoutés avant.
Je pensais ce problème assez simple, mais finalement je ne parviens pas à trouver de sélecteur permettant de faire cela, même en CSS3.
J'ai naturellement essayé div.wrapper div.foo:first-of-type, mais cela ne fonctionne pas. En fait, cela se traduit pas "selectionner le premier child de div.wrapper uniquement si c'est un div.foo" et non pas "selectionner le premier div.foo de div.wrapper" comme je l'imaginais.
Bon, j'ai la chance d'avoir d'autres classes sur lesquelles me raccrocher, mais il doit y avoir quelque chose qui m'a échappé.
Edit : En jQuery, j'aurais fait $('div.wrapper div.foo:first') mais un tel sélecteur n'existe pas en CSS
Modifié par Tymlis (20 Apr 2010 - 18:02)