David Baron vient d'intégrer dans les sources de Firefox 3 des corrections sur les sélecteurs de pseudo classes (genre :empty, :only-child, :last-child etc..). Avant, par exemple, il y avait un bug avec :empty : la sélection se faisait bien au chargement du document, mais si un élément non vide devenait vide ou l'inverse, la sélection ne se faisait plus. Et je vous parle de :empty parce que ce bug m'empêchait d'utiliser ce sélecteur dans Etna, mon éditeur XML wysiwyg, et m'obligeait du coup à des petites acrobaties dans le code qui me déplaisaient.
Ainsi, grâce à cette correction, le support des sélecteurs CSS3 dans Firefox 3.0b4 sera largement amélioré, la suite des tests de css3.info en atteste. Voici un comparatif :
| Firefox 2 | Firefox 3.0b3 | Firefox3.0b4 | |
|---|---|---|---|
| Sélecteurs OK | 26 | 32 | 36 | Sélecteurs buggés | 10 | 4 | 0 | Sélecteurs non supportés | 7 | 7 | 7 | Total des tests ok | 357/578 | 369/578 | 374/579 |
En fait, il ne reste plus que 7 sélecteurs à implémenter correctement : :nth-child(), :nth-last-child(), :first-of-type,
:last-of-type, :only-of-type, :nth-of-type(), :nth-last-of-type(). Peut-être y'aura-t-il encore des améliorations sur ceux-là d'ici Firefox 3 final mais ce n'est pas encore sûr.
À noter que webkit (safari et Konqueror) ainsi qu'opera je crois, passent la suite de test complètement avec succés.
PS : une autre conséquence de cette correction est que trois tests supplémentaires passent avec succés [au test acid3|http://acid3.acidtests.org/], avec un score de 64/100.