|
ans l'ensemble, un site bien fait et compatible avec Netscape
4.0 ne devrait pas demander de mise � jour pour �tre compatible
avec Netscape 6 � part le Javascript et plusieurs objets exclusifs
� Internet Explorer. Quelques probl�mes avec le fond et pourcentage
d'une " tables " qui a d'ailleurs toujours �t� probl�matique avec
Netscape.Les tests ont �t� effectu�s sur mes sites. Il se peut
que vous d�tectiez d'autres erreurs, mes tests ne sont pas � tout
�preuves, ils ont �t� fait en 24 heures dans le but de m'assurer
que tout mes sites �taient bien compatible avec Netscape 6.
Un
peu d'histoire
Depuis
deux ans, Netscape � fait quelques mises � jour de son navigateur
passant de Netscape Communicator version 4.0 � 4.75. Quelque temps
apr�s la vente de Netscape � AOL, j'ai eu l'occasion de tester
une version " b�ta " de Mozilla
M12 et ensuite Communicator
5.0. Vient ensuite en avril 2000, la g�n�ration Netscape 6
avec les versions Preview
Release 1, 2 et enfin en septembre dernier la version Preview
Release 3.
Télécharger
Netscape 6
Fonctionnalit�s
de Netscape 6
Les
nouvelles fonctionnalit�s sont sensiblement les m�mes que la version
Pre-release 3, alors je vous invite � lire mon texte sur le sujet:
Netscape
6 Preview Release 3. Une option vous permet, lors de l'installation,
de sauvegarder les fichiers d'installation. Tr�s pratique quand
vous d�sirez r�installer Netscape. Une fois l'ouverture de votre
premi�re fen�tre, Netscape est tr�s rapide. La diff�rence est
vraiment �vidente.
Formulaires
Vous
avez maintenant la possibilit� de g�rer les donn�es d'un formulaire
Internet. Un peu comme la gestion des mots de passe avec Internet
Explorer, Netscape permet, � l'aide du bouton droit de la souris,
de sauvegarder les informations entr�es dans un formulaire ou
de remplir un formulaire avec des donn�es d�j� enregistr�es.
En
parlant de formulaire. Un s�rieux bug, tr�s d�sagr�able, emp�che
tout changement entre les champs de saisie � l'aide de la touche
de tabulation. La tabulation ne permet que de changer le focus
sur une autres fen�tre Windows.
Menu
d�roulant
Les
menus d�roulants reste instable � l'image de la version 5. Ce
n'est pas toujours possible de faire d�rouler le menu avec la
souris.
La
roulette de la souris
Vous
devez identifier sur quel objet la roulette de la souris agira.
Dans vos pr�f�rences vous fixerez le comportement de la roulette.
3 choix sont possibles, soit; faire d�filer l'historique des
liens, la grosseur du texte ou le d�filement de la page. Les
erreurs occasionn�es par un focus dans l'adresse URL ou dans
un menu d�roulant quand vous d�sirez faire d�filer la page son
donc impossibles avec Netscape 6.
Instabilit�
Le
probl�me de Netscape avec le Javascript et le rafra�chissement
des pages n'est pas enti�rement r�gl�. Un syst�me qui vient
� manquer de ressources peut faire entrer Netscape 6 dans une
dimension paranormale. Les images r�actives peuvent �tre longue
� changer ou m�me dispara�tre compl�tement. Il peut recharger
des boutons d�j� en m�moire. Des images de fonds peuvent aussi
dispara�tre et les hyperliens sur ancrage ne fonctionnent plus.
Enfin, le fameux bug d'un code Javascript qui ne s'ex�cute pas
suite � un rafra�chissement n'est pas encore r�gl�.
Pour
le d�veloppeur
Netscape
est tr�s strict quant � l'interpr�tation du HTML, rien n'est laiss�
� la l�g�re. Un mauvais code et les erreurs jusqu'alors ignor�es
cause de plusieurs probl�mes, en particulier avec les tables.
D'ailleurs, la plupart des probl�mes sont reli�s aux tables. L'espacement
peut aussi causer des probl�mes. La balise du paragraphe P, l'espace
autour d'une liste, dans une cellule, autour d'une image ou d'une
cellule, peut aussi causer quelques probl�mes. En y regardant
de plus pr�t vous verrez que l'interpr�tation de ces balises est
bien meilleure avec Netscape qu'avec Internet Explorer. Par exemple,
pourquoi IE ajoute une marge autour d'une image align�e � droite
?
Les
Tables
Un
bon point. L'alignement dans une cellule, dont les �l�ments
d'un formulaire occupent la m�me ligne, est mieux interpr�t�
par Netscape 6 que par IE. Ce n'est toute fois pas encore au
point.Le
pourcentage en hauteur ou l'alignement d'une table sont tout
simplement ignor�s quand la table est align�e avec la balise
DIV.Le
pourcentage est souvent mal g�r� par Netscape 6, je trouve des
petits bugs comme par exemple une table avec un pourcentage
de 100% dans une table avec une cellule � 50%. La diff�rence
est tr�s minime mais quand il s'agit d'une image en deux morceaux
ce n'est pas acceptable.L'image
de fond d'une table a priorit� sur la couleur de fond d'une
cellule ou d'une ligne. En effet, la couleur de fond d'un cellule,
quand la table � une image de fond (pas une couleur main bien
une image), appara�t mais dispara�t aussit�t pour faire place
� l'image de fond de la table. De plus, comme les versions pr�c�dentes,
la r�p�tition des images de fond d'une table dans chaque cellule
fait encore des ravages.
ATTENTION
au code mal fait, en effet, une erreur fr�quente est de d�finir
une table sans ligne et colonne. Internet Explorer l'interpr�te
correctement mais Netscape 6 ignore cette table et surtout l'alignement
qu'elle peut engendrer. C'est l'erreur que je vois le plus souvent
sur des sites tr�s populaires.
Formulaires
Les formulaire sont bien plus simple � int�grer car il n'y a
plus de saut de ligne avant la balise FORM et apr�s la balise
/FORM.Dans une s�rie de boutons de s�lection (radio button)
un en dessous de l'autre, un texte de 1 point par exemple est
plus comprim� avec Netscape 6.
Listes
et retraits
Comme avec les tables, la balise DIV peut faire perdre les num�ros
ou les points et images (CSS) devant les �l�ments d'une liste.L'espace
semble aussi plus important entre le point et le texte.Il
n'y a plus aucun saut de ligne avant ou apr�s une liste ou un
retrait qui n'est pas bord� par des paragraphes. Plus besoin
de mettre vos listes dans une table pour emp�cher ces sauts
de ligne.
Sauts
de ligne
Une balise de paragraphe P en haut d'un document ou d'une cellule
est maintenant interpr�t�e, ce qui n'est pas le cas avec IE.La
balise BR pour un saut de ligne est maintenant interpr�t�e �
la fin d'une cellule ou d'un document.
Lignes
La couleur d'une ligne (HR) interpr�t�e par IE n'est pas interpr�t�e
pas Netscape 6.
Images
L'utilisation d'un alignement LEFT | RIGHT avec une image sous
IE ajoute une espace autour de l'image. Netscape n'ajoute quant
� lui aucune espace.
Javascript,
DHTML et CSS
Les diff�rences sont tr�s importantes et la plupart des codes
de manipulation DHTML Javascript ne sont plus compatibles. En
grande partie � cause du test DOM � l'aide du " document.layer
", mais aussi parce que les objets ne sont plus les m�mes. IE
n'est pas tout � fait compatible DOM-1 alors que Netscape l'est.
Netscape 6 est aussi compatible Javascript 1.4. Je ne vais pas
entrer en d�tail ici sur cette probl�matique que je vais traiter
plus tard dans la section DHTML. Pour en savoir plus, vous pouvez
lire ce document: "Transitioning
from Proprietary DOMs and Markup to W3C Standards"
Le
DOM ou document object model est particulier � chaque navigateur
mais le W3C essai de persuader les concepteur de navigateur
d'utiliser son standard, soit le DOM-1 et le DOM-2.
D�tection
du DOM pour la compatibilit� de vos codes Javascript.
Mauvaise
m�thode
La plupart des codes DHTML utilisent la d�tection d'objet pour
�tre compatibles avec les diff�rentes versions de navigateur.
La m�thode consiste � ex�cuter un code si un objet particulier
� un navigateur existe.Par
exemple, si l'objet "document.all" existe vous savez que le
navigateur est IE4 + et vous pouvez utiliser tout le DOM de
IE. Si c'est l'objet "document.layers" qui est d�tect� c'est
Netscape 4.7 et moins qui est ex�cut�. Et finalement "document.getElementById"
indique que c'est un code des recommandations DOM-1 de la W3c,
donc Netscape 5 +.
Exemple:
if (document.getElementById) {
// Navigateur Netscape 5 et plus et DOM-1.
}
else if (document.layers) {
// Navigateur Netscape 4.7 et moins.
}
else if (document.all) {
// Internet Explorer
}
Cette
m�thode grandement utilis�e n'est pas fiable � 100%. En effet
plusieurs navigateurs interpr�tent l'objet "document.all" mais
aussi "document.layers". Opera par exemple interpr�te les trois
objets. D'autres sont compatible DOM-1 mais ne comprennent pas
"document.getElementById". Cette technique n'est donc pas vraiment
fiable, la seule chose que vous pouvez savoir � coup s�r c'est
que le navigateur comprend l'objet en question.
Bonne
m�thode
La meilleure m�thode consiste � faire une v�ritable d�tection
du navigateur et d'initialiser des variables pour faire ensuite
vos tests. Ce test de compatibilit� est mis � jour continuellement
par Netscape, vous n'avez donc pas � le refaire.
Code et exemple de d�tection:
T�l�charger le
fichier INCLUDE qui d�finit les variables. detect.js
Ajouter
ce code dans l'en-t�te de votre document. (attention de bien
indiquer le chemin d'acc�s " path " du fichier detect.js).
<HEAD>
<SCRIPT LANGUAGE="JavaScript" SRC="detect.js"></SCRIPT>
<!-Interpr�ter le code Javascript selon le navigateur -->
<SCRIPT LANGUAGE="JavaScript">
<!--
if (is_nav5up)
{
// JavaScript Netscaper 5+
}
else if (is_nav4)
{
// JavaScript Netscape 4
}
else if (is_ie4up)
{
// JavaScript IE+
}
else if (is_nav3 || is_opera)
{
// JavaScript Netscape 3 et Opera
}
else
{
// JavaScript Navigator 2 et IE 3
}
//-->
</SCRIPT>
</HEAD>
Cette
m�thode est de loin sup�rieure et vous pouvez ajouter le script
de d�tection en fichier INCLUDE pour ainsi n'avoir qu'un seul
fichier � modifier en cas d'une nouvelle version de navigateur
qui demanderait une gestion personnalis�e de ses objets.
Page
du code de d�tection de Netscape
The
Ultimate JavaScript Client Sniffer, Version 3.0
[trucsweb]
mailto:[email protected]
|