Mort à IE6 !
Alors que IE8 beta 2 est sorti depuis environ deux mois et que la version finale est prévue pour la fin de cette année, on se surprend à rêver de nouveau à l’idée de pouvoir enfin utiliser l’ensemble (ou presque) de CSS 2.1 et commencer à expérimenter CSS3. Dernier obstacle sur notre route : la survie d’Internet Explorer 6.0. On se demande comment un navigateur sorti en 2001 peut encore représenter une part d’environ 20% sur l’ensemble des navigateurs du marché.
(Source : http://www.w3schools.com/browsers/browsers_stats.asp)
Ok vous vous accrochez à votre vieille deudeuche avec ces sièges en toile tendue, ses vitres à rabat manuel, son toit qui ne supporte pas les intempéries, etc.. mais, vous sentez vous en sécurité ? N’avez-vous pas envie d’arriver plus vite à bon port et surtout avec plus de confort ?
Bon j’arrête là l’analogie, parce que contrairement à votre vieille voiture, on vous échange votre vieille version d’internet explorer contre la toute dernière version de n’importe quel navigateur, au choix : Firefox, Opéra, Safari, Chrome ou même Internet Explorer : les arguments sont plutôt convaincant, jugez plutôt :
- Sécurité accrue,
- vitesse d’affichage plus rapide,
- meilleure prise en compte des standards du web,
- navigation par onglets,
- modules complémentaires,
- personnalisation,
- blocage des fenêtres popup,
- etc. La liste est longue.
Vous pouvez également rejoindre la « IE6 Death March » où des sites aussi célèbres que Facebook ont carrément laissé tomber le suivi d’IE6. Bon sans aller jusque là on peut peut-être accompagner ce vieux monsieur vers une fin progressive en offrant une version dégradée mais fonctionnelle de son site pour IE6.
Et là c’est une nouvelle façon de coder qui s’ouvre à nous, voyons ce que nous allons pouvoir faire, limite ça donne le tournis :
- Utiliser enfin toutes les possibilités de CSS 2, comme :
- – le sélecteur d’enfant direct (>)
- Ce fameux sélecteur, qui était utilisé comme hack IE6 pourra enfin être utilisé dans sa fonctionnalité première, c’est à dire que si nous avons par exemple le code : div > p {color:red} les paragraphes qui sont des enfants directs du conteneur div seront en rouge alors que les autres resteront dans leur couleur par défaut.
- – le sélecteur d’élément adjacent direct (+)
- Dans h1 + p{font-style:italic} chaque paragraphe précédé d’un titre de niveau 1 est en italique, les autres paragraphe conservent le style par défaut ou le style défini dans la css.
- – le sélecteur d’attributs [attr]
- C’est de loin un des sélecteurs les plus intéressants puisqu’on peut styler les balises en fonction de leurs attributs.
- Exemple avec les liens :
a[rel=external]{padding-right:15px;background:url(http://fr.wikipedia.org/skins-1.5/monobook/external.png) 100% 50% no-repeat;}
Les liens s’ouvrant dans une nouvelle fenêtre auront un style particulier : un petite icône sur leur droite
Les formulaires :
input[type="text"]{border:1px solid #666;}
Les input de type texte auront une bordure grise.
Je vous laisse trouver toutes les applications que vous pourrez faire avec ce procédé… - – les classes multiples
- Ok vous pourrez me dire que vous les utilisez déjà et qu’il y a un moyen de détourner les limitations d’IE6. Il n’empêche que sans IE6, vous seriez plus à l’aise pour organiser vos styles.
Je vous invite à relire le billet de Pierre du25/01/2008 à ce sujet pour vous en convaincre - – les pseudos-selecteurs :before, :after, :focus et :first-child,
- :before et :after pour générer du contenu en css et pouvoir gérer des éléments flottants sans ajouter de code html, :focus permettra de rendre les formulaires plus conviviaux sans avoir à recourir à du JS et :first-child pour éviter de mettre des classes first un peu partout sur les premiers éléments d’une navigation par exemple.
- – le pseudo sélecteur :hover sur d’autres éléments que le lien
- Pas indispensable mais quand même pratique pour certains menus déroulants. Fini l’utilisation du JS.
- – min/max width/height,
- Fixer une hauteur/largeur minimale/maximale serait bien pratique non ? Sans avoir recours à des hacks.
- Commencer à utiliser CSS3
- – le sélecteur d’élément adjacent indirect (~)
- Dans h1 ~ p{font-weight:bold} tous les paragraphes précédés d’un titre de niveau 1 sont en gras contrairement au sélecteur d’élément adjacent direct où uniquement le premier paragraphe est affecté par le style défini.
- – le sélecteur avancé d’attribut [ attr*]
- Même chose que le sélecteur d’attribut mais sur des portions des valeurs définies dans les attributs.
La question philosophique qui se pose dans l’effervescence, voire l’urgence actuelle des intégrateurs et développeurs à vouloir se débarrasser d’Internet Explorer 6 est : devons-nous faire en sorte que, pour qu’il soit accessible, le web soit consultable par tous les navigateurs encore en activité sur les postes des internautes ou amener progressivement les retardataires à s’équiper des dernières versions et dans ce cas, faut-il intrusivement suggérer à l’utilisateur comme le fait le script de « Save the developpers » de changer son moyen de naviguer sur la toile ?
Les commentaires sont fermés sur cet article.
11 commentaires
Flux RSS des commentaires de cet article
A lire aussi, un billet de Jeff Croft sur le sujet (en anglais) : http://jeffcroft.com/blog/2008/sep/30/when-can-we-stop-talking-about-supporting-browsers/
Le 22 Oct. 2008 à 17h50 par Pierre Bertet
Une question me turlupine…
Je suis bien d’accord avec tout ça mais qu’en est-il lorsque l’on intègre des sites pour du B2B sachant que tous les parcs informatiques ne sont pas en avance et que l’on ne peut pas suggérer au visiteur de choisir un autre navigateur plus récent puisque… il n’a pas les droits pour installer quoique ce soit sur sa machine… ?
Personnellement je ne sais pas bien quoi faire mais remarquez, je ne connais pas les stats browser dans l’univers professionnel.
Le 22 Oct. 2008 à 20h16 par GoOz
Pour la refonte de notre site, on a décidé de ne plus tenir compte de cette vieillerie; on s’en explique via un message en javascript qui incite le visiteur à changer.
http://www.binocle.ch/blog/post/pilule_bleue_ou_pilule_rouge/
Le 22 Oct. 2008 à 23h51 par Olivier
Le problème de ce genre d’article militant, c’est que l’on prêche des convertis, les développeurs, intégrateurs, chef de projet qui lisent tout ça savent qu’IE6 est une plaie et qu’il faut s’en débarasser. Pour toucher plus de monde sur la transmission de cette idée il faudrait sensibiliser les admin réseaux plus qu’autre chose.
En tous cas le billet laisse rêveur. ;)
Le 23 Oct. 2008 à 00h34 par Julien Dubois
En lisant ces articles sur IE6 et son utilisation, je me demande qu’elle est la part de développeurs hagards, désireux de vérifier leur site, dans les statistiques de visites?
Le 23 Oct. 2008 à 11h23 par brice
@brice : bonne réfléxion ! Idem pour javascript désactivé. Je pense pour ma part que le plus grand soucis vient que de nombreux parcs informatiques sont gérés par des informaticiens psychopathes qui ont verrouillé les postes des utilisateurs pour les obliger à utiliser des navigateurs obsolètes (c’est mon avis).
Le 23 Oct. 2008 à 11h34 par Eric Le Bihan
Prochain message de bienvenue: « si ce site site ne ressemble à rien, allez vous plaindre à votre administrateur réseau qui est une feignasse psychopathe, et dénoncez le aux RH pour incompétence » ^__^
Le 23 Oct. 2008 à 11h39 par Olivier
Perso, je continue à employer IE6 (quand je dois). IE6 reste plus rapide à se lancer que les versions ultérieures et l’interface est plus propre.
Quand 30% des visites sur les sites de mes clients se font en IE6, on est obligé de suivre. Les bugs d’affichages sont connus et c’est de la fénéantise de ne pas les corriger.
La seule façon de convaincre le switch vers un browser plus efficace serait d’expliquer la lenteur d’IE (paralels downloads, mutliples background, inline image) qui fait perdre du temps et de l’argent aux développeurs ET visiteurs.
A sa sortie, IE8 sera déjà obsolète, puisqu’il ne sera compatible qu’avec les anciens standards CSS2.1 (et pas d’intégration de CSS3 comme FF3/Webkit/Opera).
Bref, le boulot d’un intégrateur est de faire son boulot correctement sur toutes les platformes ciblées par son client. Tant que mes clients bossent sous IE6, je ne peux pas leur dire « Ha non votre navigateur est pourri, mais je vous assure que sur les autres ca donne bien ».
Le 26 Oct. 2008 à 12h03 par Marin
Le travail de l’intégrateur est de contribuer à l’avancée du web, ça passe par une sensibilisation des visiteurs (et par un effort pour rentre son travail compatible IE6).
Le 26 Oct. 2008 à 12h43 par Julien Dubois
Quand 30% des visites sur les sites de mes clients se font en IE6, on est obligé de suivre.
Je suis moyennement d’accord… C’est aussi parce que tout le monde se casse la tête pour ces 30% de gens qu’ils ne pensent pas à changer. Pourquoi le feraient-il?
C’est justement le boulot des professionnels du web de leur dire une fois pour toutes « votre navigateur est une grosse daube, vous pouvez avoir mieux »
Le 26 Oct. 2008 à 13h11 par Olivier
@Marin : Avec ce type de raisonnement on en serait encore au minitel… Bien sur que si le client demande la compatibilité IE6, il l’aura – mais il faut qu’il soit conscient que ça a un coût. C’est aussi notre boulot de dire au client qu’IE6, ce n’est plus d’actualité. Les grandes avancées ont été faite parce qu’on a imposé des standards et qu’on a dit à partir de maintenant ce sera comme ça ! Pourquoi ne le ferait-ton pas avec IE6.
A propos de la sécurité d’Internet Explorer : http://www.webdevout.net/browser-security
Le 27 Oct. 2008 à 19h05 par Eric Le Bihan