Aller au contenu

:first-of-type inefficace sur une classe


captain_torche

Sujets conseillés

Bonjour,

Je suis actuellement en train de faire un petit script, qui liste les répertoires et les fichiers d'un répertoire.

Je les présente sous la forme d'une liste non ordonnée, et pour gagner de la place, les éléments sont placés côte à côte, les répertoires en premier (classe li.dir), les fichiers ensuite (classe li.file).

Je voudrais, pour plus de lisibilité, retourner à la ligne pour le premier fichier.

J'ai donc utilisé la ligne suivante :



.file:first-of-type {
clear: left;
}

Mais ça ne fonctionne pas (Ou plutôt, ça ne fonctionne QUE si l'élément li est le premier de son parent). Je l'ai vérifié avec un fond de couleur.

Est-ce un bug, ou je m'y prends mal ?

Lien vers le commentaire
Partager sur d’autres sites

Merci de l'éclaircissement !

J'essaierai le contournement lundi, je te tiendrai au courant. Si ça ne marche pas, je le ferai en JS.

Soit dit en passant, je ne saisis pas la logique de ces pseudo-classes : pourquoi ne les rendre actives que sur la balise, alors que les autres pseudo-classes fonctionnent sur l'ensemble des sélecteurs ?

Lien vers le commentaire
Partager sur d’autres sites

La pseudo-classe fonctionne sur n'importe quoi, mais la notion de "premier" est définie ici par rapport au type, comme dans "first-child" elle est par rapport aux enfants d'un objet donné, etc.

Tu peux donc avoir:

type:first-type -> correspond à un élément de type "type" qui est le premier de ce type

.class:first-type -> correspond à un élément de classe "classe" qui est le premier de son type

La pseudo-classe est indépendante du reste du sélecteur, donc elle a forcément toujours la même signification.

Jacques.

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...