Dernière mise à jour :2008-05-18

informatique

Le mode quirks et le mode stricte sont les deux «modes» que les browsers modernes peuvent utiliser pour interpréter votre feuille de style (CSS). Ce court article présente les différences entre ces deux modes et les raisons pour lesquelles ils sont utilisés.

Le problème

Lorsque Netscape 4 et Internet Explorer 4 ont implémenté les CSS, leur implémentation ne correspondait pas exactement au standard du W3C. De plus, l'implémentation de l'un ne correspondait pas à celle de l'autre.

Pour être sûr que leur site web présenterait correctement les pages dans les divers browsers, les développeurs web devaient implémenter les CSS selon les désirs de chacun de ces browsers. Ceci en résulte que la majorité des sites web n'utilisent pas CSS de la façon qui respecte les spécifications du W3C.

Lorsque l'ajustement aux spécifications du W3C devint chose plus importante, les fabriquants de browsers ont dû faire un choix. Se rapprocher des standards du W3C était la chose à faire mais si ils changaient leur implémentation pour correspondre exactement au standards, l'interface de tonnes de sites web en souffrirait.

La solution à ce problème CSS

Toute solution à ce problème de feuille de style devrait :

  1. Permettre aux développeurs web qui connaissent les standards de choisir quel mode utiliser
  2. Continuer de présenter les anciennes pages web selon les anciennes règles (les «quirks» rules).

En d'autres mots : Tous les browsers avaient besoin de deux modes; un pour les anciennes règles et un pour les nouvelles règles. Explorer pour Mac, Explorer 6, Mozilla, Safari et Opera sont les premières versions de browser à implémenter les deux modes. Notez bien qu'Internet Explorer 5 Windows ne fait pas partie de cette liste. Il restera à tout jamais blocké en quirks mode.

Choisir quel mode utiliser requiert un déclencheur, et ce déclencheur se trouve dans le doctype. En se basant sur les standards, les langages (X)HTML doivent disposer d'un doctype (cette balise tout en haut de chaque page) qui indique quel format de (X)HTML le document utilise.

Les pages sans doctype seront affichées en quirks mode (présentation selon les anciennes règles).

Pour les pages avec des doctypes, le mode stricte est déclenché dans la majorité des cas. Chaque browser dispose cependant de sa propre liste de doctypes qui déclenche le quirks mode.

Par exemple, le doctype suivant déclenche le mode stricte dans tous les browsers :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

Notez bien que pour déclencher le mode stricte, il faut seulement que votre page contienne un doctype. Elle ne doit pas obligatoirement être valide (le browser ne s'en tient qu'à lire le doctype, il ne va pas en plus valider la conformité du code de la page).

Auteur : vinz102

Date de mise en ligne : 2007-06-19

Aucun commentaire pour l'instant.