Comportement du mode quirks de Mozilla

Ce qui suit est une liste sommaire des différences qui existent entre les modes standard et quirks de Mozilla. Cette liste date de début juin 2001 (avec quelques ajouts depuis lors, mais pas la liste complète de ce qui a changé). Depuis lors, le changement le plus important est que beaucoup de déviations liées au contrôle des formulaires ont été retirées. Un autre changement souvent remarqué est qu'en mode standard, les feuilles de styles CSS qui portent un autre type MIME que text/css sont rejetées.

Généralités et style

  • Toutes les règles de style figurant dans layout/style/quirk.css s'appliquent.
  • En mode quirks, les noms de classes CSS sont insensibles à la casse. En mode standard, les majuscules et minuscules sont significatives.
  • Les feuilles de style liées avec le document dont le type MIME renseigné est text/css seront toujours traitées comme du CSS même si le serveur donne un en-tête Content-Type différent de text/css.
  • L'analyseur CSS accepte les couleurs ne commençant pas par #.
  • L'analyseur CSS interprète les nombres sans unités comme des unités px (sauf pour la propriété font-size pour suivre ce que Netscape 4 faisait, et pour line-height et toute autre propriété où elles ont une signification distincte).
  • Les couleurs HTML sont traitées différemment (# n'est pas obligatoire et les chiffres manquants sont complétés d'une autre manière)
  • Une chaîne vide pour l'attribut background rend l'URL du fond vide uniquement en mode quirks.
  • Les polices système fonctionnent différemment en mode quirks (même si ce sont les contrôles de formulaires qui les utilisent qui devraient plutôt fonctionner différemment).
  • Les tailles de police HTML (1-7) et CSS (xx-small - xx-large) sont calculées légèrement différemment (voir le bug 18136).
  • Les styles de puces des listes n'héritent pas de la taille de police de la liste en mode quirks.
  • La pseudo-classe :hover ne sera appliquée qu'au liens, images et contrôles de formulaires, à moins que le sélecteur indique un nom de balise, un ID ou un attribut.

Rendu de bloc et inline

  • [Cette différence est présente en mode presque standard.] Le calcul de hauteur des lignes (pas line-height) est différent pour corriger les bug 5821 et bug 24186 (certains autres problèmes sont décrits dans le bug 22274).
  • Un grand nombre de bidouillages sont faits pour obtenir des hauteurs en pourcentage pour les images, les tableaux, les objets et les applets (et d'autres éléments ?) pour « fonctionner » (de la façon dont elles fonctionnaient dans Netscape 4), bien que CSS précise que les hauteurs en pourcentage doivent se comporter comme des hauteurs « auto » lorsque l'élément parent n'a pas de hauteur fixe. Voir une description dans le bug 33443#c9. Voir aussi le bug 41656 et ses copies. Certains de ces changements peuvent également causer d'autres effets (voir le bug 54119).
  • L'élément HR est traité différemment dans les modes quirks et strict (et il est possible que ce soit mauvais dans les deux cas).

Tableaux

  • Les couleurs de fond des tableaux fonctionnent différemment (voir le bug 4510) Il n'est pas certain que ce soit nécessaire. [Cette différence n'existe plus]
  • En mode quirks, absmiddle (géré incorrectement ?) et middle (peut-être également géré de manière incorrecte) sont acceptés comme valeurs de l'attribut align sur des cellules de tableaux et absmiddle, abscenter et middle sont gérés sur les tableaux et gérés de la même manière que center.
  • Le fond du document (et les couleurs ?) est appliqué sur les éléments TD, TH, TR, THEAD, TBODY et TFOOT (quand le fond du document est spécifié d'une certaine manière) (voir aussi le bug 70831 ).
  • La propriété empty-cells a la valeur par défaut hide en mode quirks, mais show (suivant l'errata CSS2) en mode standard (voir le bug 33244) (la méthode correcte serait de le spécifier pour l'élément HTML TABLE dans quirk.css).
  • En mode quirks, les tableaux flottants ne passent jamais à la « ligne » suivante si ils sont trop larges pour passer à côté des autres éléments flottants, ils provoquent juste l'élargissement de la page (voir le bug 43086).
  • En mode quirks, colspan="0" et rowspan="0" ne sont intentionnellement pas gérés comme décrit dans HTML4.
  • hspace et vspace sont gérés sur l'élément TABLE uniquement en mode quirks.
  • En mode quirks, lorsque des tableaux ont un style de bordure inset ou outset, la couleur de cette bordure est basée sur la couleur de fond du tableau ou de l'ancêtre le plus proche possédant un fond non transparent.
  • En mode quirks, les cellules de tableaux avec une bordure ont une largeur minimale d'un pixel.
  • À partir de Gecko 1.8 (voir le bug 277232) : en mode quirks, une largeur fixe spécifiée sur une cellule de tableau réinitialise l'attribut nowrap. Si celui-ci est présent, la cellule ne sera jamais plus petite que la largeur fixe spécifiée.
  • La stratégie de rendu de base des tableaux ignore le padding (sur quoi ?) en mode quirks.
  • La stratégie de rendu de base des tableaux gère les largeurs différemment.

Formulaires

  • Les tailles des entrées de type Button sont calculées différemment.
  • En mode standard, un élément BUTTON peut soumettre le formulaire uniquement s'il ne possède pas d'attribut type.
  • Les tailles des entrées de texte (et d'autres contrôles contenant du texte ?) sont calculées différemment (voir le bug X)
  • Les polices pour les éléments INPUT button et SELECT sont calculées différemment.
  • Le fait qu'un bouton parmi un groupe radio soit toujours sélectionné (par défaut) requis par HTML n'est pas vérifié en mode quirks.

Frames

  • En mode quirks, marginwidth et marginheight sur un élément FRAME sont propagés vers l'élément BODY qu'ils contient.
  • Dans une spécification de taille de cadres, 0* est traité comme 1* (voir le bug 40383).
  • L'attribut scrolling sur FRAME est traité différemment.

Analyseur HTML

  • En mode quirks, les commentaires HTML sont analysés d'une manière compatible avec les anciens navigateurs plutôt que de traiter « -- » comme le délimiteur de début et de fin de commentaire.

Informations sur le document original

  • Auteur(s) : David Baron, Boris Zbarsky
  • Date de dernière mise à jour : 8 juillet 2003

Voir aussi

Mode quirks de Mozilla

Étiquettes et contributeurs liés au document

Étiquettes :
Contributeurs ayant participé à cette page : BenoitL, Fredchat, Mgjbot
Dernière mise à jour par : Fredchat,