La règle CSS @supports{} permet de tester la prise en charge par le navigateur d'une ou des propriétés Css et une de ses valeurs et d'assigner des déclarations Css si le résultat du test est vrai.
La règle de feuille de style @supports CSS accepte comme valeur de "test" :
propriete : nom de la propriété Css suivie de : puis de sa valeur, le tout entre parenthèse.
La règle @supports CSS ne peut pas se déclarer dans l'attribut HTML ou XHTML STYLE. La règle CSS @supports doit être déclarée dans une balise HTML ou XHTML STYLE.
Problème d'interprétation de @supports{} en Css.
La règle de feuille de style @supports CSS pose des problèmes car elle n'est pas à ce jour reconnue par tous les navigateurs (2012).
Règles de syntaxes CSS pour @supports{}.
Les opérateurs de @supports
Dans les définitions des opérateur, nous utiliserons le terme "testpropriété" qui est égal à ( nom propriété : valeur ).
L'opérateur logique "and": L'opérateur logique "and" signifie et. Il permet de tester plusieurs "testpropriété" qui doivent être toutes vraies.
L'opérateur logique "or": L'opérateur logique "and" signifie ou. Il permet de tester plusieurs "testpropriété" dont au moins une doit être vrai.
L'opérateur de négation "not": L'opérateur "not" signifie ne doit pas être vari. Il permet une "testpropriété" ou un ensemble de condition.
Règles d'écritures des conditions
Chaque opérateur suivant doit être précédé d'un espace et suivi d'un espace.
Pour l'opérateur and ou or, chaque changement d'opérateur nécessite de mettre la condition précédente et suivante entre parenthèses.
Compatibilités navigateurs de la règle @supports{}