Le pseudo-élément CSS :first-letter permet de spécifier des propriétés CSS pour la première lettre d'un élément dit de type bloc et si elle est précédée d'aucun autre contenu sur sa ligne.
Par défaut, pseudo-élément :first-letter CSS est considéré comme un élément flottant, si float égale none, alors il devient un élément de type inline.
Le pseudo-élément de feuille de style :first-letter CSS peut contenir toutes les propriétés liées à :
Le pseudo-élément de feuille de style :first-letter CSS ne peut être appliqué que sur des éléments dit de type bloc (ex:p, div), de type table-cell (ex:td;th), de type list-item (ex:li) ou de type table-caption (ex:caption)
Le pseudo-élément de feuille de style :first-letter CSS ne peut pas se déclarer dans l'attribut HTML ou XHTML STYLE. Le pseudo-élément CSS :first-letter doit être déclaré dans une balise HTML ou XHTML STYLE.
Problème d'interprétation de :first-letter en Css.
Le pseudo-élément CSS :first-letter peut poser des problèmes quand la première lettre est un caractère spécial du genre r commercial, arobase, etc... incluse avec :before.
Evolutions de la syntaxe CSS de :first-letter.
Le pseudo-élément CSS :first-letter en CSS3 s'écrit avec 2 deux ":"
Règles de syntaxes CSS pour :first-letter.
Qu'est que la première lettre?
Il ne faut pas prendre la première lettre au pied de la lettre. La propriété CSS first-letter inclut aussi :
les chiffres, le premier chiffre d'un nombre soit "1" si on a "10".
la première lettre du contenu inclut avec :before. Prend le dessus par rapport à la première lettre du texte sans l'insertion de contenu fait avec :before.
une combinaisons de lettres, dans certaine langue "la première lettre" peut obéir à des règles particulières. Par exemple en hollandais, la combinaison "ij" survient au début d'un mot :first-letter doit prendre en compte les deux lettres ensemble.
un type de ponctuation (voir ci-dessou) : si la première lettre est immédiatement suivie ou précédée de cette type de ponctuation elle est incluse dans la "première lettre".
Le pseudo-élément CSS :first-letter s'applique la première lettre de tous les éléments HTML ou XHTML. Vous pouvez donc si nécessaire mettre un sélecteur devant pour conditionner la sélection de la première lettre, sinon les propriétés seront appliquées à l'ensemble des éléments HTML ou XHTML qui répondent à :first-letter.
Pour schématiser, il faut imaginer que par défaut le pseudo-élément CSS :first-letter s'écrit *:first-letter. "*" représente la condition soit "n'importe première lettre" (sélectionne toutes les premières lettres sans distinction). Donc pour conditionner plus précisément la sélection, il faut juste remplacer "*" par un autre sélecteur qui vous permettra de distinguer l'élément que vous voulez sélectionner. Ce sélecteur doit être unique (classe, id, balise ou pseudo-classe) ou multiple à condition de ne pas contenir d'espace entre chaque sélecteur, sinon on passe dans le cas d'un chemin de sélection pour sélectionner le parent (vous comprendrez mieux avec les exemples qui suivent).
Maintenant, vous pouvez être plus précis pour cibler l'élément parent dans lequel vous voulez sélectionner les "premières lettres", en mettant un chemin de sélection devant :
Compatibilités navigateurs du sélecteur :first-letter