Navigateurs

Tous les navigateurs n'interprètent pas les différentes versions d'HTML, javascript et CSS de la même manière.

L'affichage des images, des animations, de la transparence change d'une version à l'autre.

Quand il est possible d'activer java (JRE 6.0), d'installer les "plugins" (Flash, Ipix, Quicktime, Acrobat Reader...), l'exécution est identique mais pas toujours la position sur l'écran.

Tous ces problèmes de compatibilité obligent les concepteurs de sites à rediriger ou à générer les pages en fonction du navigateur détecté ou à créer plusieurs feuilles de style ou le plus souvent à n'écrire que pour les navigateurs les plus courants ou les plus fréquents ou pour leur favori. D'où le danger d'utiliser ces logiciels qui prétendent offrir l'anonymat : comme le "referrer" ("HTTP_REFERER") peut être faux ou bloqué et les cookies refusés, comme il n'y a plus d'indication du type de navigateur, l'accès au site peut être interdit, les pages générées par PHP ou les routines de détection en javascript risquent de ne plus fonctionner et, ici, le menu de gauche, qui dépend du navigateur, peut recouvrir une partie du texte ou ne plus afficher le popup en CSS...

Cette page a été générée pour votre navigateur identifié ainsi :
CCBot/2.0 (http://commoncrawl.org/faq/)
Cette page ne donnera pas les mêmes résultats avec une autre identification.

Conséquences pour les captures

Lors de la capture, il est donc préférable d'identifier le navigateur qui sera utilisé.
WinHTTrack propose 30 identifications en fonction du navigateur et du système d'exploitation et une option pour renvoyer n'importe quelle chaîne.
De plus, certains sites ou prestataires (comme free.fr) interdisant les aspirateurs de sites, c'est parfois le seul moyen d'effectuer la capture.
Sur le site la page http://danzcontrib2.free.fr/no_msie6.php renvoie tout compatible MSIE 6 à la page d'accueil et affiche le code aux autres navigateurs.

Avant que free.fr ne filtre HTTrack, vous pouviez tester la capture de ce site avec plusieurs identificateurs (un navigateur récent et un navigateur ancien par exemple) et receviez des pages très différentes. En changeant d'identificateur avec Mozilla (+ Multizilla), Firefox (+ User Agent Switcher), Konqueror, K-Meleon ou par l'intermédiaire de wannabrowser, vous obtiendrez des codes très différents : avec ou sans javascript, avec un choix de feuilles de style, des instructions CSS différentes...

Lors d'une mise à jour du navigateur, il est souvent indispensable de mettre à jour la capture si c'est encore possible.

Quelques problèmes de compatibilité

A titre d'exemple, voici quelques problèmes rencontrés pour ce site :

Chaque test a conduit à des modifications (et a parfois ajouté des erreurs).

Le service de validation du W3C permet souvent de corriger de nombreuses erreurs dans le code d'une page.
Ceci dit, les problèmes sont le plus souvent dus à l'utilisation de javascript et CSS.

javascript

PHP m'a permis de limiter au maximum l'utilisation de javascript.

CSS

Le service de validation du W3C permet souvent de corriger de nombreuses erreurs.
PHP m'a permis de détecter le navigateur et de corriger la plupart des problèmes même s'il vaut mieux procéder autrement.
La page sur CSS détaille la façon dont ils ont été réglés.
Egalement en ligne, une initiation à la façon de déboguer une page avec des problèmes.
Vous trouverez aussi quelques pages qui décrivent une façon de réaliser une feuille de style sans tableaux compatible avec de nombreux navigateurs.

Les navigateurs moins connus, souvent plus rapides, affichent le texte, parfois les images, une partie des menus et rarement les animations javascript.

Une liste des navigateurs avec des commentaires en anglais est disponible sur le site Dan's Web Tips.
Un tableau comparatif en anglais des navigateurs est disponible sur le site Wikipedia.
Un tableau comparant en anglais les possibilités des navigateurs est disponible sur le site nanobox.chipx86.com.

Tous ces problèmes m'ont amené, dans un premier temps, à mettre  cette version du site de côté car 5 à 10% des visiteurs du site (humains ou robots) utilisent encore ou annoncent des navigateurs trop anciens pour CSS2 (de génération 3 ou 4, en particulier Nescape 4).

Pour vos captures, faites donc des essais et comparez.

hautHaut de la page

Avec javascript

W3C XHTML 1.0
W3C CSS
navigateurs