Image-rendering - Propriété CSS

image-rendering

Résumé des caractéristiques de la propriété image-rendering

Description rapide
Définit le mode de mise à l'échelle des images.
Statut
Standard
Utilisable sur
HTML, SVG
Valeurs prédéfinies
auto | high-quality | smooth | pixelated | crisp-edges | optimizequality | optimizespeed
Pourcentages
Ne s'appliquent pas.
Valeur initiale
auto
Héritée par défaut
Oui.
Discrète : lors d'une animation, la propriété image-rendering passe d'une valeur à l'autre sans transition.
Module W3C
Module CSS - Images
Statut du document: CR (document candidat à la recommandation)

Schéma de la syntaxe de image-rendering.

Image-rendering property - Syntax diagramSyntax diagram of the image-rendering CSS property. See stylescss.free.fr for details. auto auto smooth smooth high-quality high-quality pixelated pixelated crisp-edges crisp-edgesimage-rendering:;image-rendering:;
Schéma syntaxique de la propriété image-rendering.
Cliquez sur les liens du schéma pour plus de précisons sur les valeurs.

Description de la propriété image-rendering.

image-rendering définit quelle méthode utiliser pour mettre les images à l'échelle. Les images sont rarement affichées à leurs dimensions d'origine : les propriétés width et height peuvent changer leur taille à l'affichage, ou tout simplement, l'internaute peut zoomer, ce qui nécessitera de ré-afficher toutes les images avec de nouvelles dimensions.

Il existe en effet plusieurs algorithmes pour traiter le dimensionnement des images avec chacun des avantages et des inconvénients : temps de calcul long, introduction de flou, pixellisation, etc.

Lorsque image-rendering est appliqué à un élément, il concerne toutes les images, que ce soit les images contenues dans l'élément, ou les images d'arrière-plan, les images de bordure, etc.

L'effet de image-rendering est surtout visible lorsque l'image est agrandie. Dans le cas d'une réduction de taille, le choix de la méthode de mise à l'échelle est moins critique.

Valeurs pour image-rendering.

  • image-rendering: auto;

    Le navigateur choisit la méthode qui lui semble la plus appropriée.

    Exemple pour image-rendering:auto
  • image-rendering: smooth;

    L'image devra être mise à l'échelle avec un algorithme qui préserve la douceur de l'image. Cette méthode est recommandée pour les photos.

    Exemple pour image-rendering:smooth
  • image-rendering: high-quality;

    Comparable à la valeur précédente smooth. Cependant la valeur high-quality doit être appliqué sur les images de la page qui seront prioritaires pour un meilleur rendu, dans le cas où les ressources système ne permettent pas un rendu optimal pour toutes les images de la page.
    Autrement dit, si les ressources système sont insuffisantes, le navigateur commence par réduire la qualité des images avec la valeur smooth.

    La valeur high-quality ne doit être appliquée qu'à un nombre limité d'images de la page, voire à une seule image.

    Cette option est intéressante pour les pages qui comportent de nombreuses images, dont une est par exemple sélectionnée par le lecteur.

    Exemple pour image-rendering:hight-quality
  • image-rendering: crisp-edges;

    L'image est mise à l'échelle avec un algorithme qui préserve les contrastes et les contours, qui n'introduit pas de flou. Cette méthode est recommandée pour les logos, ou autres images bitmap.

    Exemple pour image-rendering:crisp-edges
  • image-rendering: pixelated;

    L'image sera mise à l'échelle de la façon la plus simple. Ce qui dans le cas d'un grossissement se traduira par des pixels visibles.

    Exemple pour image-rendering:pixelated
  • image-rendering: optimizequality; image-rendering: optimizespeed;

    Ces valeurs sont obsolètes.
    optimizespeed a été remplacée par pixelated.
    optimizequality a été remplacée par smooth.

  • image-rendering: initial; (auto) image-rendering: inherit; image-rendering: revert; image-rendering: revertLayer; image-rendering: unset;

    Consultez les pages suivantes pour plus de détails : initial, inherit, revert, revert-layer, unset.

Exemple d'animation de image-rendering.

Un exemple d'Exemple d'animation de image-rendering. Cette dernière n'est pas la plus intéressante des propriétés du point de vue animation.

Animation de image-rendering

Exemple interactif avec la propriété image-rendering.

L'image du ballon ci-dessous a été fortement agrandie afin que l'effet de image-rendering soit bien visible.

image-rendering :
Exemple pour image-rendering

Compatibilité des navigateurs avec image-rendering.

La propriété image-rendering est bien reconnue par les navigateurs, mais les algorithmes de mise à l'échelle des images ne semblent pas standardisés : certaines valeurs de la propriété ne sont pas reconnues ou donnent des résultats incorrects.

Colonne 1
Compatibilité des navigateurs avec la propriété image-rendering qui choisit l'algorithme de lissage utilisé pour les images.
Colonne 2
Compatibilité des navigateurs avec la valeur crisp-edges appliquée à la propriété image-rendering.
Colonne 3
Suport de la valeur pixelated pour la propriété image-rendering.
Colonne 4
Compatibilité des navigateurs avec la valeur smooth appliquée à la propriété image-rendering.
Colonne 5
Compatibilité des navigateurs avec les valeurs optimizespeed et optimizequality appliquées à la propriété image-rendering.

Remarques :

(1) Nécessite le préfixe du navigateur -ms-. Internet Explorer utilise à la place -ms-interpolation-mode: nearest-neighbor. Ne fonctionne pas sur les arrière-plan ou les canvas.

(2) Supporte la valeur pixelated mais pas la valeur crisp-edges.

(3) Utilise la valeur non standard -webkit-optimize-contrast.

1
Propriété
image-rendering
2
Valeur
crisp-edges
3
Valeur
pixelated
4
Valeur
smooth
5
Valeurs
optimizequality
optimizespeed
Estimation de la prise en charge globale.
96%
96%
95%
2%
19%

Navigateurs sur ordinateurs :

Navigateurs sur mobiles :

Navigateurs obsolètes ou marginaux :

Internet Explorer

UC Browser pour Androïd

Opéra Mobile

QQ Browser

Baidu Browser

Samsung Internet

Safari

Safari sur IOS

Chrome

Opéra

Edge

Chrome pour Androïd

Firefox pour Androïd

Firefox

Androïd Brower

KaiOS Browser

Opéra mini

Histoire de la propriété image-rendering.

  • Module CSS - Image niveau 3

    Concernant image-rendering. Présentation de la propriété image-rendering.
    WD
    23 Juillet 2009
    Document de travail.
    CR
    17 Avril 2012
    Candidat à la recommandation.
    PR
    REC

Voir aussi, à propos des images.

Les spécifications CSS éditées par le W3C sont organisées en modules. La propriété image-rendering fait partie du module Module CSS - Images.
Les définitions suivantes sont également décrites dans ce même module.

Propriétés :

image-orientation
Définit l'orientation d'une image (doit-elle être tournée de 90° ?)
Image-rendering
Définit le mode de mise à l'échelle des images.
object-fit
Définit comment un contenu multimédia (image, vidéo) doit s'adapter aux dimensions de son contenant.
object-position
Définit la position d'une image ou d'une vidéo par rapport à son container.

Fonctions :

conic-gradient()
Définit un dégradé de couleurs conique.
cross-fade()
Réalise le mélange de plusieurs images.
element()
Récupère l'aspect d'un élément sous forme d'une image.
image()
Désigne une image en précisant, le cas échéant, son sens de lecture.
image-set()
Propose au navigateur un choix d'images afin que ce dernier puisse choisir celle qui est le plus adapté (résolution, format...).
linear-gradient()
Détermine un dégradé de couleur évoluant de façon linéaire d'un bout à l'autre de l'élément.
radial-gradient()
Détermine un dégradé de couleur radial (depuis le centre vers les bords).
repeating-conic-gradient()
Définit un dégradé de couleurs conique, et le répète sur toute la surface de l'élément.
repeating-linear-gradient()
Détermine un dégradé de couleur linéaire et le répète sur toute la surface de l'élément.
repeating-radial-gradient()
Détermine un dégradé de couleur radial et le répète sur toute la surface de l'élément.