Font-palette - Propriété CSS

font-palette

Résumé des caractéristiques de la propriété font-palette

Description rapide
Définit la palette de couleurs utilisable pour les polices de caractères colorées.
Statut
Standard
Utilisable sur
HTML
Valeurs prédéfinies
normal | dark | light
Pourcentages
Ne s'appliquent pas.
Valeur initiale
normal
Héritée par défaut
Oui.
Type d'animation
Discrète : lors d'une animation, la propriété font-palette passe d'une valeur à l'autre sans transition.
Module W3C
Module CSS - Polices de caractères
Références (W3C)
Statut du document: WD (document de travail)

Schéma de la syntaxe de font-palette.

Font-palette property - Syntax diagramSyntax diagram of the font-palette CSS property. See stylescss.free.fr for details. normal normal light light dark dark --id --id palette-mix(...) palette-mix(...)font-palette:;font-palette:;
Schéma syntaxique de la propriété font-palette
Les liens du schéma donnent accès à plus de détails

Description des termes utilisés sur le schéma :

  • --id est un identifiant commençant par un double tiret, et défini avec @font-palette-values.
  • palette-mix() : reportez-vous à la définition de la fonction palette-mix() pour des précisions sur sa syntaxe.

Description de la propriété font-palette.

Certains formats de polices permettent la définition, non seulement de la forme des caractères (glyphes) mais également de leurs couleurs. C'est particulièrement utilisé pour les symboles, les emojis, etc. mais on trouve des polices fantaisie avec tous les caractères en couleurs. Cette fonctionnalité est assez récente et tous les navigateurs ne la prenne pas encore en charge (norme COLRv1 : Color Gradient Vector Fonts version 1). Reportez vous au tableau de compatibilité à la fin de cette page.

Cette colorisation se fait suivant une palette de couleurs définie dans le fichier de police. Certaines polices proposent plusieurs palettes.

Bien sûr il ne s'agit pas seulement de colorier les glyphes entiers (la propriété color fait cela très bien), mais d'introduire plusieurs couleurs dans chacun des glyphes.

🃏 💳 🌂 🌄 🌈

Caractères graphiques standards

La propriété font-palette permet de définir la palette de couleurs à utiliser pour l'affichage des glyphes colorés, soit parmi les palettes prédéfinies incluses dans le fichier de la police, soit parmi les palettes personnalisées définies avec la directive @font-palette-values.

Valeurs pour font-palette.

  • font-palette: normal;

    Le navigateur décide de la palette de couleurs à utiliser, afin d'obtenir la meilleure lisibilité possible.

  • font-palette: light;

    Parmi les palettes proposées dans la police, le navigateur choisit celle qui sera le plus lisible sur un fond clair. Cette information est normalement indiquée dans la police.

  • font-palette: dark;

    Certaines polices de caractères proposent plusieurs palettes de couleurs. Certaines peuvent être identifiées comme étant lisibles sur un fond sombre. Lorsqu'une telle palette est disponible, font-palette: dark; demande au navigateur de l'utiliser.

  • font-palette: --nom-de-palette

    Le navigateur choisit d'utiliser la palette indiquée. Celle-ci devra avoir été définie par la directive @font-palette-values. Les noms des palettes personnalisées commencent forcément par un double tiret.

  • font-palette: palette-mix(...)

    Description à venir.

Valeurs communes à toutes les propriétés :

font-palette: initial (normal) font-palette: inherit font-palette: revert font-palette: revertLayer font-palette: unset

Les valeurs communes sont présentées sur ces pages : initial, inherit, revert, revert-layer, unset.

Exemple interactif avec la propriété font-palette.

Le simulateur ci-dessous propose le choix entre deux des palettes prédéfinies (light et dark) et une palette personnalisée, qui a été définie par la directive @font-palette-values. Cliquez sur le bouton pour voir la définition de cette palette nommée --demo1.

font-palette :
A B C D E F

Compatibilité des navigateurs avec font-palette.

La gestion des polices colorées avec palettes semble aujourd'hui bien prise en charge, mais rappelons que cette fonctionnalité n'est disponible que sur certaines polices de caractères.

Colonne 1
Support des polices ColRv1 permettant d'afficher des caractères chromatiques.
Colonne 2
Support de la propriété font-palette, choisir la palette de couleurs pour les polices de caractères qui en comportent plusieurs.
1
Support de
COLRv1
2
Propriété
font-palette
Estimation de la prise en charge globale.
78%
93%

Navigateurs sur ordinateurs :

Navigateurs sur mobiles :

Navigateurs obsolètes ou marginaux :

Internet Explorer

Baidu Browser

QQ Browser

Opéra Mobile

Firefox

Chrome

Safari

Edge

Opéra

Chrome pour Androïd

Safari sur IOS

Samsung Internet

UC Browser pour Androïd

Androïd Brower

Firefox pour Androïd

KaiOS Browser

Opéra mini

Histoire de la propriété font-palette.

Voir aussi, au sujet des polices de caractères.

Les propriétés et directives concernant les polices de caractères sont nombreuses. Leur définition est regroupée dans le module CSS Fonts Module. Vous trouvez les définitions suivantes dans ce module :

Propriétés :

font
Raccourci pour définir la plupart des propriétés concernant les polices de caractères.
font-effect
Permet d'appliquer quelques effets au texte : relief, bordure...
font-family
Sélectionne une police de caractères parmi celles qui sont disponibles ou celles qui sont téléchargées.
font-feature-settings
Permet d'exploiter les fonctionnalités spécifiques des polices de caractères OTF, WOFF, etc.
font-kerning
Ajustement du crénage entre caractères.
font-language-override
Définit le langage à prendre en compte lors du choix des caractères.
font-optical-sizing
Optimise la forme des caractères en fonction de leur taille.
font-size
Ajuste la taille des caractères, ce qui impacte aussi les units comme em, ex, etc.
font-size-adjust
Définition du coefficient d'aspect de la police.
font-smooth
Définit si un algorithme de lissage doit être utilisé et lequel.
font-stretch
Modifie l'étirement ou la compression des caractères.
font-style
Sélectionne les styles italique ou oblique de la police de caractères.
font-synthesis
Autorise ou non le calcul des styles manquants dans la police de caractères.
font-synthesis-position
Autorise ou non le navigateur à synthétiser les caractères en exposant ou en indice.
font-synthesis-small-caps
Autorise ou non le navigateur à calculer le glyphes des caractères en petites capitales.
font-synthesis-style
Définit si le navigateur est autorisé à synthétiser les formes italiques des caractères.
font-synthesis-weight
Définit si le navigateur peut calculer ou non le glyphe des caractères gras.
font-variant
Raccourci permettant de définir les attributs typographiques évolués : ligatures, substitution de caractères, etc.
font-variant-alternates
Définit la substitution de caractères (polices OTF, WOFF).
font-variant-caps
Applique une capitalisation des caractères.
font-variant-east-asian
Typographie spécifique aux caractères chinois ou japonais.
font-variant-emoji
Choisit entre une présentation en emoji ou en texte.
font-variant-ligatures
Active ou désactive la ligature des caractères.
font-variant-numeric
Définit le mode d'affichage des nombres évolués : fractions, numéros, etc.
font-variant-position
Mise en exposant ou en indice des caractères.
font-variation-settings
Donne accès aux possibilités stylistiques des polices OTF.
font-weight
Sélectionne une graisse pour les caractères.
font-width
Synonyme de font-stretch (largeur/élargissement des caractères).

Fonctions :

palette-mix()
Établit le mélange de deux palettes de couleurs issus de deux polices de caractères différentes.

Directives :

@font-face
Définit tous les paramètres d'une police de caractères téléchargeable.
@font-feature-values
Définit les variantes typographiques à utiliser.
@font-palette-values
Définit une palette de couleurs applicable ensuite à une police de caractères.

Descripteurs :

ascent-override
Descripteur pour @font-face. Définit la hauteur des caractères au dessus de la ligne de base.
descent-override
Descripteur pour @font-face. Définit la hauteur des caractères au dessous de la ligne de base.
font-display
Descripteur pour @font-face. Détermine le comportement du navigateur face aux polices de caractères longues à charger.
line-gap-override
Descripteur pour @font-face. Définit l'interligne de la police.
src
Définit la source d'un fichier de police de caractères à télécharger, ou d'une image à afficher.
unicode-range
Descripteur pour @font-face. Définit la plage des codes de caractères à télécharger dans une police.