Fiche CSS : Les filtresObjet de la ficheÉtat de la fiche
Plan de la fiche
Avant proposCette fiche traite des modifications d'apparences de certains éléments HTML lorsque certains types de filtres leurs sont appliqués. Majoritairement cette fiche ne concerne que le navigateur Internet Explorer. Transparence et Opacités des imagesNe pas confondre opacité d'une image et transparence d'une ou plusieurs couleurs. Ci dessous un exemple de transparence de couleurs.
Ci dessous un exemple de modification de l'opacité (dans ce cas c'est l'opacité de l'image jaune toute entière qui est modifiée et non plus une seule couleur)
Pour modifier son opacité une image peut être retouchée à l'aide de logiciels courants comme photo editor ou Power Point ou encore bien d'autres disponibles en freeware sur internet. Les formats d'image les plus courants permettant d'enregistrer une image avec son degré d'opacité sont les formats gif et png. Toutefois d'autres solutions existent grâce à l'utilisation des feuilles de style et de filtres. Opacité et compatibilité tout navigateurPrincipeLa solution consiste à utiliser les feuilles de style et des filtres: soit 2 images, dragon.gif et Transparence05.png (rectangle orange/jaune) que nous allons superposer à l'aide de la feuille de style et fusionner ensemble l'avant plan et l'arrière plan grâce à un filtre particulier. La syntaxe de réglage de l'opacité est différente suivant le navigateur utilisé.
Feuille de style
|
Noms des filtres | Actions |
---|---|
alpha() | Fusion des couleurs |
blur() | Estompe |
chroma() | Définition d'une couleur comme transparente |
dropshadow() | Ombre |
shadow () | Ombrage en dégradé |
flipv() | Symétrie verticale |
fliph() | Symétrie horizontale |
invert() | Inversion des couleurs (couleur complémentaires) |
glow() | Bords flamboyants |
gray() | Nuances de gris |
xray() | Effet de négatif |
wave() | Ondulation |
mask() | Masque de couleur |
Éléments | Applications |
---|---|
body | pour l'ensemble de la page |
p | paragraphe |
div | boites |
span | boites en ligne |
table, td, tfoot, th, thead, tr | pour l'ensemble du tableau considéré ou pour certains des éléments du tableau. |
input | pour les champs de saisie |
filter:progid:DXImageTransform.Microsoft.nomdufiltre(propriétes1,propriétes2, .....)
ou plus classiquement
filter:nomdufiltre(propriétes1,propriétes2, .....)
Propriétés | Valeurs |
---|---|
opacity = X | Niveau de fusion de l'image : avec X compris entre 0 (transparence totale) à 100 (opacité totale). |
finishopacity = Y | Fondu linéaire à partir de la valeur X du paramètre opacity jusqu'à la valeur Y définie par le paramètre finishopacity. Y compris entre 0 (transparence totale) à 100 (opacité totale). |
style = Z (1) | Style de l'effet avec Z compris entre 0 et 3. |
Z=0 : Les valeurs de couleurs d'arrière plan et de premier plan sont additionnées. Tous les autres paramètres sont superflus. alpha(style=0) suffit pour cette déclaration. | |
Z=1 : Fondu linéaire entre un point de départ dont la valeur de l'opacité est définie par opacity = X et un point d'arrivée dont la valeur de l'opacité est définie par finishopacity = Y. Les points de départ est d'arrivée sont définis par startx, starty, finishx, finishy. | |
Z=2 : Fondu radial de l'intérieur (opacity = X) vers l'extérieur( finishopacity = Y). | |
Z=3 : Fondu rectangulaire de l'intérieur (opacity = X) vers l'extérieur( finishopacity = Y). | |
startx = | Position à partir du bord gauche, ou va être appliqué le filtre. Uniquement si style = 1. |
starty = | Position à partir du haut, ou va être appliqué le filtre. Uniquement si style = 1. |
finishx = | Position à partir du bord gauche, ou ne va plus s'appliquer le filtre. Uniquement si style = 1. |
finishy = | Position à partir du haut, ou ne va plus s'appliquer le filtre. Uniquement si style = 1. |
(1) Pour Z=1, 2 ou 3 les paramètres startx=, starty=, finishx= et finishy= peuvent être omis si on ne désire pas délimiter une certaine zone.
Exemple de résultat avec le filtre alpha et la feuille de style associée filter:alpha(opacity=100,finishopacity=0,style=2) |
![]() |
Propriétés | Valeurs |
---|---|
add | 0 : suppression des contours (seule la trace estompé apparaît). 1 : avec contour |
direction | ![]() |
strength | Valeur numérique qui définit en pixels la force de l'estompe. 0 => pas d'effet d'estompe |
Exemple de résultat avec le filtre blur et la feuille de style associée filter:blur(add=1,direction=0,strength=10) |
![]() |
Propriétés | Valeurs |
---|---|
color | Valeurs classiques des couleurs sous forme de noms (white, black, red, green ...), de valeurs hexadécimales (#31C089) ou rgb (rgb(221,175,12). |
Exemple de résultat avec le filtre chroma et la feuille de style associée filter:chroma(color=#ffffff) |
![]() |
Propriétés | Valeurs |
---|---|
color | Couleur de l'ombre : valeurs classiques des couleurs sous forme de noms (white, black, red, green ...), de valeurs hexadécimales (#31C089) ou rgb (rgb(221,175,12). |
offx = X | Dimension en pixels de l'ombre horizontale. X ombrage à droite, -X ombrage à gauche. |
offy = Y | Dimension en pixels de l'ombre verticale. Y ombrage en bas, -Y ombrage en haut. |
positive | =0 par défault, =1 effet d'ombrage sur les parties transparentes d'un élément (cas d'images gif ou png avec couleur de transparence). |
Exemple de résultat avec le filtre dropshadow et la feuille de style associée filter:dropshadow(color=gray,offx=10,offy=10,positive=1) |
![]() |
Propriétés | Valeurs |
---|---|
color | Couleur de l'ombre : valeurs classiques des couleurs sous forme de noms (white, black, red, green ...), de valeurs hexadécimales (#31C089) ou rgb (rgb(221,175,12). |
direction | ![]() |
Exemple de résultat avec le filtre shadow et la feuille de style associée filter:shadow(color=gray,direction=135) |
![]() |
flipv() provoque une symétrie verticale, fliph() une symétrie horizontale et invert() transforme toutes les couleurs par leur couleur complémentaire.
Ces trois propriétés ne demandent aucun paramètre.
Exemple de résultat avec le filtre flipv() et la feuille de style associée filter:flipv() |
![]() |
Exemple de résultat avec le filtre fliph() et la feuille de style associée filter:fliph() |
![]() |
Exemple de résultat avec le filtre invert() et la feuille de style associée filter:invert() |
![]() |
Propriétés | Valeurs |
---|---|
color | Couleur de flamboiement : Valeurs classiques des couleurs sous forme de noms (white, black, red, green ...), de valeurs hexadécimales (#31C089) ou rgb (rgb(221,175,12). |
strength | Valeur numérique qui définit en pixels la force du flamboiement. 0 => pas d'effet de flamboiement. |
Exemple de résultat avec le filtre glow() et la feuille de style associée filter:glow(color=red,strength=10) |
![]() |
Cette propriété ne demande aucun paramètre.
Exemple de résultat avec le filtre gray() et la feuille de style associée filter:gray() |
![]() |
Cette propriété ne demande aucun paramètre.
Exemple de résultat avec le filtre xray() et la feuille de style associée filter:xray() |
![]() |
Attention : La syntaxe officielle (filter:progid:DXImageTransform.Microsoft.xray() ne fonctionne pas à tous les coups. Dans le cas de non fonctionnement essayez : filter:xray ().
Propriétés | Valeurs |
---|---|
freq | Valeur numérique qui définit la fréquence de l'ondulation. |
light | Pourcentage entre 0 et 100 de l'intensité lumineuse de l'ondulation. |
phase | Valeur usuellement définie entre 0 et 50. Correspond aux déplacements des zones de creux et de pics. |
strength | Valeur numérique qui définit en pixels la force de l'ondulation (amplitude). 0 => pas d'ondulation. |
add | 0 : suppression des contours (seule la trace ondulée apparaît). 1 : avec contour |
Exemple de résultat avec le filtre wave() et la feuille de style associée filter:wave(freq=3,light=0,phase=10,strength=4,add=0) |
![]() |
Propriétés | Valeurs |
---|---|
color | Tout ce qui était initialement transparent est remplacé par la couleur définie par la valeur de color. Tout ce qui n'était pas initialement transparent est remplacé par la couleur de fond de l'élément. color prend les valeurs classiques des couleurs sous forme de noms (white, black, red, green ...), de valeurs hexadécimales (#31C089) ou rgb (rgb(221,175,12). |
Exemple de résultat avec le filtre mask() et la feuille de style associée filter:mask(color=white) |
Avant Après |
Plusieurs filtres peuvent être appliqués en même temps sur un même élément.
filter:alpha(opacity=100,finishopacity=0,style=2) dropshadow(color=gray,offx=10,offy=10,positive=1) wave(freq=3,light=0,phase=10,strength=4,add=0)
ce qui donne l'image ci-contre :