Spécifications CSS


Annexe B : Les changements depuis CSS1

Cet annexe est informatif, et non normatif.

CSS2 s'appuyant sur CSS1, toute feuille de style valide pour CSS1 l'est aussi pour CSS2. Les changements entre la spécification CSS1 (voir [CSS1]) et la présente spécification sont de trois types : nouvelles fonctionnalités, mises à jour de descriptions de fonctionnalités CSS1 et changements à CSS1.

B.1 Les nouvelles fonctionnalités

CSS2 ajoute à celles de CSS1 les fonctionnalités suivantes :

B.2 La mise à jour des descriptions

La spécification CSS1 était courte et concise, celle-ci est beaucoup plus volumineuse et plus claire. Une grande part du contenu supplémentaire est consacré aux descriptions des nouvelles fonctionnalités, sans pour autant délaisser celles des fonctions de CSS1 qui ont été complétées. Sauf dans de rares cas, les descriptions refondues n'introduisent pas de changements syntaxiques ni sémantiques.

B.3 Les changements sémantiques depuis CSS1

Bien qu'une feuille de style CSS1 soit valide pour CSS2, il existe certains cas où l'interprétation de celle-ci prendra un sens différent en CSS2. La plupart de ces changements résulte de la prise en considération de l'expérience accumulée dans les implémentations, mais certains d'entre eux sont aussi des corrections d'erreurs.

  • La signification de "!important" a changé. En CSS1, la mention de "!important" dans la feuille de style de l'auteur avait priorité sur celle de l'utilisateur. Ceci est inversé en CSS2 ;
  • En CSS2, les valeurs de couleur sont rognées en fonction du gamut de l'appareil, et non plus en fonction du gamut de sRGB comme en CSS1 ;
  • En CSS1, la propriété 'margin-right' était ignorée quand on spécifiait à la fois une valeur pour 'margin-left' et pour 'width'. En CSS2, la relaxe de 'margin-left', ou de 'margin-right' dépend du sens d'écriture ;
  • En CSS1, les valeurs de plusieurs propriétés (ex. 'padding') se référaient à la largeur de leur élément parent. C'était une erreur, cette valeur devrait toujours se rapporter à la largeur d'un élément de type bloc, ce qui est reflété par l'introduction de l'expression "bloc conteneur" en CSS2 ;
  • En CSS2, la valeur initiale de la propriété 'display' est 'inline', et non 'block' comme en CSS1 ;
  • En CSS1, la propriété 'clear' s'appliquait à tous les éléments. C'était une erreur, la propriété ne s'applique qu'à ceux de type bloc en CSS2 ;
  • En CSS1, les pseudo-classes ':link', ':visited' et ':active' s'excluaient mutuellement. En CSS2, la pseudo-classe ':active' peut survenir en réunion avec ':link' ou ':visited' ;
  • Le facteur d'échelle recommandé, entre deux index adjacents dans la table des tailles des polices, pour la propriété 'font-size', a été réduit de 1.5 à 1.2 ;
  • La valeur calculée, et non pas la valeur réelle, de la propriété 'font-size' s'hérite ;
  • La description CSS1 de la valeur 'inside' (pour la propriété 'list-style-position') laissait entendre que la marge gauche du texte pouvait être affectée, plutôt que la position de la marque de liste. En CSS2, ce n'est plus le cas ;
  • Consulter également le chapitre normatif traitant des différences entre l'atomiseur de CSS1 et celui de CSS2.

Document créé le 12/08/06 22:39, dernière modification le 04/04/18 12:13
Source du document imprimé : https://www.gaudry.be/css-rf-changes.html

L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.

Références

  1. document html Langue du document: fr Traduction des normes CSS : http://www.yoyodesign.org/doc/w3c/css2/cover.html, yoyodesign

Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.