Journal Les scrollbar de couleur sous IE c'est une histoire ancienne

Posté par  .
Étiquettes : aucune
-12
10
mar.
2010
Bonjour,

Dans le cadre de mon travail j'ai pu remarqué qu'il n'était plus possible d'avoir un site (en xhtml) valide et de colorier ses scrollbar comme dans les années 1990 à 2000.

en effet IE8 n'active que cette fonctionnalité si le mode "Quirks" est activé et que la page internet ne comporte pas de doctype...

Je suis plutôt content parce que le rendu à l'époque était vraiment moche. Mais c'est chouette de voir que le w3c et css deviennent valides même chez IE et qu'ils suppriment leur "Hacks" spécifiques.

Un des rare sites sans doctype ou l'on peut encore admirer cet horrible scrollbar coloré:
pour un petit test rapide et ne plus afficher la scrollbar il suffit d'aller dans le débogueur IE8 et de choisir le mode de compatibilité : IE8.
Hop.. c'est de l'histoire ancienne...
  • # Oubli.

    Posté par  . Évalué à 6.

    Il manque le lien vers le site de test ;)

    THIS IS JUST A PLACEHOLDER. YOU SHOULD NEVER SEE THIS STRING.

    • [^] # Re: Oubli.

      Posté par  . Évalué à 10.

      Il manque IE8 pour le test.
    • [^] # Re: Oubli.

      Posté par  . Évalué à 1.

      http://www.a-tixier.com/scroll004.htm

      voila je ne sais pas pourquoi il n'as pas été pris en compte...
    • [^] # Re: Oubli.

      Posté par  (site web personnel) . Évalué à -3.

      Non Grunt, konqueror n'affichera pas les scrollBar de couleurs ;-)
      • [^] # Re: Oubli.

        Posté par  . Évalué à 8.

        Si, il les affiche. Tu veux une copie d'écran? :)

        THIS IS JUST A PLACEHOLDER. YOU SHOULD NEVER SEE THIS STRING.

    • [^] # Re: Oubli.

      Posté par  . Évalué à 2.

      Et pourtant, il est bien là, mais il n'y a pas de texte associé...

      Avec une navigation au curseur (touche F7 sur la plupart des navigateurs), on arrive à trouver le lien (on peut aussi chercher dans le code source de la page).
      Alors le voici : http://www.a-tixier.com/scroll003.htm (ça aurait été dommage de se priver d'un truc pareil !)
  • # Gné???

    Posté par  . Évalué à 5.

    qu'il n'était plus possible d'avoir un site (en xhtml) valide et de colorier ses scrollbar
    ça a été xhtml valide ça un jour???

    Mais c'est chouette de voir que le w3c et css deviennent valides même chez IE
    c'est pas plutôt l'inverse? IE qui aurait un support "valide" du w3c?

    il suffit d'aller dans le débogueur IE8 et de choisir le mode de compatibilité : IE8
    IE8 aurait un mode de compatibilité avec lui-même... trop fort chez microsoft. Tu ne veux pas plutôt parler du mode de compatibilité IE7?

    Heureusement, IE8 améliore pas mal de points un peu "spécifiques" des précédentes versions. Mais c'est surement grâce à une concurrence qui s'accroit dans le marché des navigateurs et de fait, une difficulté importante à pouvoir justifier à long terme ce genre de bidouilles qui autrefois étaient censées "faciliter" le travail des web-développeurs...
    • [^] # Re: Gné???

      Posté par  . Évalué à 7.

      ça a été xhtml valide ça un jour???

      De mémoire (j'ai dû cesser ces manipulations douteuses il y a cinq ans au moins), la couleur des barres de défilement était manipulée par une propriété CSS non standard. Donc pas d'influence sur la validité XHTML des pages, seulement sur la validité CSS.
    • [^] # Re: Gné???

      Posté par  . Évalué à 2.

      ça n'as jamais été valide.. mais c'était fonctionnel... maintenant ça n'est plus fonctionnel (si c'est valide xhtml).

      oui, c'est l'inverse... mais ça ne remet pas en cause le résultat

      Non non, ie8 a 3 modes (quirks, ie7 et ie8) et sous 2 modes différents (soit 6) mais je me suis jamais vraiment intéressé a toutes les différences à part entre le mode quirks et les autres.

      Sinon tout à fait d'accord... IE à fait suer plus d'un développeur web alors qu'il était sensé simplifier tout ça
    • [^] # Re: Gné???

      Posté par  (site web personnel, Mastodon) . Évalué à 1.

      Ça deviendra peut-être valide un jour, car la règle veut qu'il faut 2 implémentations pour qu'un truc se retrouve dans la spéc. Et les couleurs de scrollbar c'est géré par IE et Opera (au moins). Opera se contentant de suivre ce que faisait IE, héritage d'une époque ou il était le seul navigateur alternatif.

      Webkit a rejoint la danse l'année dernière également, mais avec une syntaxe différente du genre ::-webkit-scrollbar-button:start:decrement (oui c'est tout aussi imbitable que la syntaxe IE). Du coup on est à 3 implémentations, même si elles sont différentes.

      D'un autre côté webkit ils aiment bien implémenter des trucs inutiles : animations, transitions, scrollbars... J'attends leur version de blink avec impatience :)

      « Je vois bien à quels excès peut conduire une démocratie d'opinion débridée, je le vis tous les jours. » (Nicolas Sarkozy)

      • [^] # Re: Gné???

        Posté par  (site web personnel) . Évalué à 4.

        Ah non les transitions ça roxor des mamans ours et c'est dans CSS3 !

        Fini les hacks DHTML à coup de jquery (ou pas) pour faire des transitions au survol d'une menu.

        L'association LinuxFr ne saurait être tenue responsable des propos légalement repréhensibles ou faisant allusion à l'évêque de Rome, au chef de l'Église catholique romaine ou au chef temporel de l'État du Vatican et se trouvant dans ce commentaire

      • [^] # Re: Gné???

        Posté par  (site web personnel, Mastodon) . Évalué à 4.

        >mais avec une syntaxe différente du genre ::-webkit-scrollbar-button:start:decrement (oui c'est tout aussi imbitable que la syntaxe IE)

        non. je trouve cela même plus propre et plus cohérent, puisqu'ici ce sont des selecteurs de pseudo elements : on selectionne ce que l'on veut styler, et ensuite on style. Comme n'importe quel element. Le principe de css quoi.

        Cela permet donc d'utiliser les propriétés classique (border, color, background et j'en passe), plutôt que de proposer 15 propriétés avec des noms différents mais qui finalement veulent dire la même chose que les propriétés classiques.

        ex: scrollbar-highlight, -scrollbar-shadow, scrollbar-darkshadow, ce sont les couleurs des bordures de la scrollbar si je ne dis pas de bêtises. ce qui est finalement équivalent à utiliser la propriété border.

        > D'un autre côté webkit ils aiment bien implémenter des trucs inutiles : animations, transitions

        Je rejoins infernal quack. Les transistions, c'est tout sauf inutile. En 3-4 propriétés CSS, tu fais un effet graphique sur un hover, là où il te faut charger x dizaine de ko de js (jquery, mootols ou autre), et écrire un paté de code javascript (qui ne fonctionnera pas si js est désactivé, ou autre).

        J'ai eu l'occasion de jouer avec, c'est enfantin à utiliser.

        Pour les animations, je suis un peu plus réservé, vu que ça casse quelques principes de CSS (une horreur au niveau implémentation, quand on lit la spec). et puis la syntaxe est un peu olé olé...
  • # linuxfr ???

    Posté par  . Évalué à -10.

    On est sur linuxfr là ou j'ai raté un truc ?
    • [^] # Re: linuxfr ???

      Posté par  . Évalué à 3.

      Pour le troll.. on parle d'IE qui s'aligne en supprimant des possibilités (non-standard) afin de se rendre compatible ou du moins d'avoir le même affichage que d'autres navigateurs libres tels que FF.
    • [^] # Re: linuxfr ???

      Posté par  (site web personnel) . Évalué à 10.

      T'as raté un truc en effet :


      Les journaux sont destinés à des informations qui ne sont pas suffisamment intéressantes pour être validées en dépêche (sinon n'hésitez pas à proposer votre information en dépêche), qui sont sans rapport avec Linux ou le libre, ou simplement pour donner votre avis.
  • # CSS ou xhtml?

    Posté par  . Évalué à 5.

    Si je ne dis pas de bêtise pour colorer la barre IE il fallait utiliser une propriété CSS.
    Donc rien à voir avec le xhtml...
    Ok je chipote ;o) car le css aussi est normalisé et l'attribut scrollbar-xxx n'est pas défini ce qui rend le document invalide au regard du W3c.

    De toutes façons, si mes sites sont valides xhtml, la feuille de style ne l'est quasiment jamais car j'utilise des hacks pour rendre l'affichage correct sur tous les navigateurs.
    Par exemple la transparence, il faut utiliser 3 propriétés afin d'assurer un bon affichage :
    -moz-opacity:0.5;
    opacity: 0.5;
    filter:alpha(opacity=50);

    mais ce n'est pas valid selon le w3c ...
    • [^] # Re: CSS ou xhtml?

      Posté par  . Évalué à 2.

      Je me suis peut-être mal exprimé
      c'est une des validité du CSS qui est prise en compte ou non en fonction de la validité du site en W3c

      Si le site est valide en W3c ie8 n'affiche pas ldes scrollbar de couleur.
      Si le site n'pas valide en w3c ie8 affiche les scrollbar de couleur.
      • [^] # Re: CSS ou xhtml?

        Posté par  . Évalué à 1.

        Depuis le début tu as du mal à t'exprimer...

        Ou alors je suis à l'ouest de ton raisonnement...

        Si le site est valide POUR W3C (donc xhtml et css valides), il risque pas d'afficher les scrollbars en couleurs vu que ça n'est pas toléré par la validation css... ça veut donc dire que l'attribut n'est pas dans la fiche de style. Et ça que ce soit IE8, 7 ou 6 du coup...

        Si le site n'est pas valide POUR W3C (css invalide à cause de cet attribut par exemple), même IE8 (sans mode de compatibilité IE<) n'affichera pas les scrollbars en couleurs à priori. Il faudrait forcer l'utilisation du mode IE7 ou du mode quirks (équivalent à IE6?) pour les voir...

        Au final, je ne comprends vraiment pas tes "si valide alors ie8 n'affiche pas" et inversement...
        • [^] # Re: CSS ou xhtml?

          Posté par  . Évalué à 0.

          Lol,

          Quand tu valide un site avec w3c il ne vérifie pas le CSS et HTML en même temps, tu peux avoir un site internet qui répond aux normes du W3c uniquement au niveau html ou css.
          valider ton html = http://validator.w3.org/
          valider ton css = http://jigsaw.w3.org/css-validator/

          si l'un est valide l'autre peut ne pas l'être et vice versa.. ok pour l'instant tu arrive à suivre?

          Donc le doctype fait partie de la vérification html et si le site n'est pas correct selon w3c IE va interpréter le css différemment, soit

          html pas correct (selon W3c) = les balises qui ne sont pas css W3c sont prises en compte

          html correct (selon W3c) = les balises qui ne sont pas css W3c ne sont pas sont prises en compte

          ... je réessaye d'une autre façon? ou t'as bon là?
          • [^] # Re: CSS ou xhtml?

            Posté par  . Évalué à 1.

            Quand tu valide un site avec w3c il ne vérifie pas le CSS et HTML en même temps, tu peux avoir un site internet qui répond aux normes du W3c uniquement au niveau html ou css.
            Jusque là on est d'accord et je connais bien les deux validations... pas besoin d'explications.

            C'est ton histoire d'interprétation différente que je te suis pas. IE ne vérifie pas la validité ((x)html puisqu'il faut préciser) W3C d'une page (x)html avant de l'interpréter. Il vérifie tout juste le doctype qui n'est pas forcément le signe d'une validité ((x)html puisqu'il faut préciser) du contenu qui suit.

            En plus pour moi, si IE8 interprète en mode de compatibilité IE7 ou quirks une page, c'est soit de façon manuelle soit via une balise meta (qui peut ou pas lier l'interprétation selon le doctype).

            Donc si le (X)HTML est valide, tu peux avoir des propriétés CSS de merde qui peuvent ou pas être interprétées par IE selon l'émulation active ou pas.
            Et si ton (X)HTML n'est pas valide, tu peux aussi avoir des propriétés CSS de merde qui peuvent ou pas être interprétées par IE selon l'émulation active ou pas.

            C'est un peu contraire à ce que tu mets dans tes "si" qui précèdent non?

            (Et tu gardes tes "Lol" pour tes usages familiers dont je ne compte pas faire partie.)
            • [^] # Re: CSS ou xhtml?

              Posté par  . Évalué à 1.

              Yep...

              mais IE dit* que si le doctype est inexistant ou mauvais que c'est un site fait pour ie5 ou 6... soit qu'il n'as pas été fait avec les normes W3c. Puisque par logique et dans tous les cas le site ne peut pas être valide w3c si le doctype ne l'es pas...

              Donc IE adapte son interprétation css (le fameux mode quirks) pour que le rendu soit le plus fidèle possible à ce qu'on avait avec ie5 ou 6...

              La ou ça devient un peu plus intéressant c'est de voir les choix qu'ils on fait. c'est à dire le fait d'enlever le support de la personnalisation du scrollbar pour lorsqu'il suppose que le site est "w3c correct" ils ne visent plus leurs petits "plus" d'affichage mais bien le respect des standards en priorité

              Je ne vois pas en quoi tu n'est pas ou tu ne veux pas être d'accord avec ça?


              *J'ai du effectuer plusieurs tests là dessus. après il y a aussi un moyen d'essayer de forcer tel ou tel mode en fonction de ce que tu peux mettre dans la balise head mais si tu force le mode quirks pour un site valide w3c l'affichage sera différents sur les autres navigateurs qui intérpetent le css selon les normes w3c puisque ton ie8 n'intépretera plus le css selon les normes w3c
              • [^] # Re: CSS ou xhtml?

                Posté par  . Évalué à 2.

                IE dit* que si le doctype est inexistant ou mauvais que c'est un site fait pour ie5 ou 6...
                C'est déjà plus clair comme explication.

                je vais pouvoir poser une question plus productive que d'essayer de comprendre ton journal... C'est un mode forcé ou on peut rester en mode original?
          • [^] # Re: CSS ou xhtml?

            Posté par  . Évalué à 4.

            > Quand tu valide un site avec w3c il ne vérifie pas le CSS et HTML en même temps
            Un ancien de fedora-fr avait fait le même constat, il y a quelques années, voilà sa réponse:
            http://xhtml-css.com
  • # Nivellement par le bas ?

    Posté par  . Évalué à 5.

    Et sinon c'est quoi l'intérêt de ne pas pouvoir adapter la couleur des scrollbars (comme les champ d'upload, les selects,...) via css ?
    Il y a bien une standardisations des events sur ces inputs, pourquoi n'y a-t-il pas la même chose en ce qui concerne le style ? Je sais bien que ces inputs sont actuellement repris de l'environnement graphique, et donc en prennent le style, mais justement, ne serait-il pas temps que le navigateur gère lui-même ces éléments et qu'ils aient des propriétés standards ?
    Après on en arrive à des hacks affreux où l'input est caché, un "faux" input est affiché à la place et on joue avec les events pour donner le change...
    • [^] # Re: Nivellement par le bas ?

      Posté par  . Évalué à 0.

      faut voir avec le W3c pourquoi ils ont décidé qu'on ne pouvait pas... et pourquoi Ms s'est mis à les suivre (ce qui en passant est une bonne chose en soi je trouve)... pourquoi ce n'est pas l'inverse j'en sais rien...
    • [^] # Re: Nivellement par le bas ?

      Posté par  . Évalué à 2.

      Tout à fait.

      Je trouve dommage d'enlever un effet de style (même si je ne suis pas fan des barres en couleurs). C'est comme les coins arrondit des boxs qui existent avant que la spec ne sorte.
      Si ton navigateur le supporte, tu as des bords arrondit, sinon, non.

      Mais bon, je pense que le moteur graphique d'IE8 est totalement diffèrent du 7 et 6, donc la raison de ce changement est plus technique qu'autre chose.
      • [^] # Re: Nivellement par le bas ?

        Posté par  . Évalué à 3.

        Effet de style... les scrollbar... pour moi il y a une grosse différence entre une scrollbar (élément d'accessibilité et fonctionnellement important) et une boite avec des coins arrondis ou pas (ce qui n'a pas d'influence fonctionnelle ou d'accessibilité).

        Préserver les choix de thème de l'utilisateur est important dans le cadre d'un élément d'accessibilité (visibilité/contrastes notamment dans le cas des couleurs).
        • [^] # Re: Nivellement par le bas ?

          Posté par  (site web personnel) . Évalué à 1.

          Tu peux déjà changer le style des widgets de formulaires, pourquoi pas des scrollbars.

          De toute façon, on peut très bien faire un site non accessible sans changer la couleur des scrollbars. CSS fournit plein d'autres moyens pour ça.
    • [^] # Re: Nivellement par le bas ?

      Posté par  (site web personnel) . Évalué à 4.

      des events sur ces inputs

      Jean-Claude, sors de ce corps !
  • # Sous konqueror...

    Posté par  (site web personnel) . Évalué à 1.

    ...le thème de la barre d'ascenseur fonctionne. (néanmoins juste les couleurs, pas les effets de relief ou autres)
  • # ça fonctionne

    Posté par  (site web personnel, Mastodon) . Évalué à 10.

    Bien sûr que si ça fonctionne toujours !

    C'est juste que Microsoft a ENFIN ajouté un prefix devant ses propriétés css propriétaires, comme le font tout les autres éditeurs (-moz-, -webkit-, -o-), et qui rend du coup la feuille de style valide (puisque les extensions css proprio sont autorisés par la spec)

    du coup, scrollbar-face-color devient -ms-scrollbar-face-color par exemple. (en mode standards, car en mode quirks, c'est toujours les anciennes qui sont prises en compte).

    La suite, ici :

    http://blogs.msdn.com/ie/archive/2008/09/08/microsoft-css-ve(...)

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.