Journal Petite réflexion sur les standards Web

Posté par  (site web personnel) .
Étiquettes : aucune
0
4
juin
2004
De longue date, je développe des sites Internet. Ces derniers ont deux caractéristiques : ils sont compatibles HTML4 (plutôt que XHTML) et mis en page par table. D'où des remarques nombreuses (le XHTML, c'est mieux; la mise en page par table, c'est mal, utilise des div, etc).

J'ai donc commencé à travailler sur de très petits projets, histoire d'éprouver les difficultés pratiques de la mise en page sans table et de l'XHTML. D'où un exemple modeste ici : http://doc.logiciellibre.net/(...) .

Pour moi, les standards ne sont pas une fin en soi, mais un outil. Aussi, mes sites doivent être accessibles aussi bien pour un utilisateur d'Opera ou de IE4 (1% du marché grosso modo) que, si possible, pour un malvoyant.

Cependant, la mise en page sans table me semble apporter des incompatibilités gênantes (float mal supportés sous IE 4 par exemple). L'allégement des pages me paraît tout-à-fait hypothétique. Reste l'accessibilité pour les personnes malvoyantes, qui à mon sens demande un réel investissement de la part du webmaster et dépasse largement le débat avec ou sans table / HTML4 ou XHTML 1.

Bref, avec un peu de recul, je me dis que, pour un effort raisonnable, la mise en page propre par table (pas 15 tables imbriquées) + HTML 4 + CSS reste la meilleure solution, en matière d'accessibilité (compatibilité avec les navigateurs actuels et récents).

Qu'en pensez-vous ?
  • # Je te comprends ...

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

    Je comprends bien ce que tu veux dire ... Il n'y a rien de plus frustrant que de jouer avec le positionnement CSS parce que tel attribut ou positionnement n'est pas supporte par tel ou tel browser ...

    Pourtant la norme est bien faite et le CSS apporte un vrai plus.

    Je m'adresse aux societes qui developpent des navigateurs (en fait, j'en vise surtout une mais qui ne lit certainement pas ce site, quoi que ...) : est-ce que c'est si difficile vu les moyens que vous avez d'implementer une norme ?? N'y a-t-il pas quand meme un peu de mauvaise volonte derriere ? En tout cas de la mauvaise foi, sans aucun doute ...
    • [^] # Re: Je te comprends ...

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

      La norme, c'est un argument de faible. Quand on est riche, puissant, et dominant, la norme, on se torche avec. Ou plutôt, on la fait soi-même.
    • [^] # Re: Je te comprends ...

      Posté par  . Évalué à 8.

      Il ne s'agit pas d'une norme mais de recommandations.

      Cela dit, l'intérêt pour Minidoux est immense. Je m'explique :

      1°) Le W3C édicte des recommandations de manière à ce que le web soit accessibles à tous.

      2°) Minidoux abuse de la position dominante de Fenêtres, et ne respecte volontairement pas les recommandations.

      3°) Les sites internet sont faits de manières à fonctionner sous le navigateur Minidoux, les recommandations deviennent donc inutiles.

      4°) Les sociétés concurrentes souhaitant développer des navigateurs essayent de coller aux recommandations du W3C, mais sont obligées de se tenir au standard de fait qu'est le navigateur de Minidoux. Ce qui renforce encore plus la position dominante de Minidoux Explorationneur, et ce qui réduit encore plus la portée des recommandations du W3C.

      5°) Les webmasters qui ne souhaitent pas s'embarrasser de problèmes font seulement en sorte que leur site passe bien sous Minidoux Explorationneur, certains irréductibles essayent encore de faire des sites Internet qui passent partout, à grand renfort d'heures supplémentaires et d'arrachages de cheveux.

      [----- On en est plus ou moins là -----]

      6°) Le W3C perd progressivement le peu d'influence qui lui restait, et même les plus irréductibles, devenus chauves, finissent par céder, tous les sites fonctionnent sous Minidoux Explorationneur, et pour arriver à cela plus facilement, se jouent de certaines recommandations du W3C

      7°) Le W3C n'a plus aucune crédibilité, les standards sont désormais publiés par Minidoux et il faut payer une licence pour pouvoir les exploiter ou accéder à leurs définitions.

      6°) Minidoux Internet permet aux ordinateurs du monde entier (exceptés ceux qui ne sont pas sous Fenêtres) d'échanger des données et des informations. Internet tel que nous le connaissons est mort depuis longtemps, car il coutaît trop cher à entretenir pour de trop faibles retombées commerciales. L'ensemble des investissements se fait désormais sur le nouveau réseau international Minidoux Internet.
      • [^] # Re: Je te comprends ...

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

        certains irréductibles essayent encore de faire des sites Internet qui passent partout, à grand renfort d'heures supplémentaires et d'arrachages de cheveux.

        OH ! Un troll !

        arrachage de cheveux quand on débute. (normal, il faut désormais apprendre html et css ! ainsi que les petites astuces pour que ça passe partout... tu parles d'une histoire !)

        Mais ensuite, ça passe tout seul quand on commence à maîtriser.
        (bref, c'est comme tout hein..)

        M'enfin vouloir faire en sorte que ça passe à la fois sous IE4 et sous IE6/moz/truc, faut vraiment être un masochiste et avoir justement du temps à perdre. Parce que c'est vraiment de la perte de temps que de rendre "compatible" un site conçus avec les standards, avec un navigateur qui comprend à peine les standards.. Et c'est d'autant plus de temps de perdu que quasiement plus personne ne l'utilise...

        Commencer la compatibilité avec la version 5.0, ça va, mais avec le 4, c'est débile.
        (ou alors appliquer une astuce css pour pas que les feuilles de styles s'appliquent pour IE4, et là ça passe super nickel ;-) )
      • [^] # Re: Je te comprends ...

        Posté par  . Évalué à 0.

        1° - 2° - 3° - 4° - 5° - 6° - 7° -6° !
        1+1 = 2
        +1 = 3
        +1 = 4
        +1 = 5
        +1 = 6
        +1 = 7
        +1 = 6
        Donc 6+1=6-1 soit 1=-1 ou 0=2
        nickel, je vais déposer le brevet !
  • # C'est mal(tm)(c)

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

    Je suis d'accord avec toi que parfois il y a des trucs pas faisable avec des CSS mais seulement avec des tableaux (l'inverse est vrai aussi) mais je ne pense pas que c'est une raison valable pour abandonner.

    Les tableaux sont fait pour présenter des données tabulaires et pas fait pour la mise en page (contrairement à ce que les écoles de graphisme semble apprendre aux futurs web-designers).
    Un tableau sera lu comme un tableau par un navigateur texte ou braille. Et ça sera loin d'être accessible car il indiquera à l'utilisateur qu'il se trouve danstel colonne, qu'il en sort,... (sémantique oblige).

    Je te renvoie au lien suivant pour avoir une démonstration :
    http://www.humanfactors.com/downloads/chocolateaudio.asp(...)

    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: C'est mal(tm)(c)

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

      Je suis d'accord avec toi que parfois il y a des trucs pas faisable avec des CSS mais seulement avec des tableaux

      Tu peux me donner un exemple ?

      Personnellement, je n'arrive toujours pas à trouver de limites au CSS par rapport aux tableaux.

      Et, contrairement à ce que dit ce journal, lorsqu'on a du XHTML valide, c'est tout droit pour avoir une page accessible aux malvoyants. En effets, les outils pour malvoyants ne lisent pas la CSS.

      Mes livres CC By-SA : https://ploum.net/livres.html

      • [^] # Re: C'est mal(tm)(c)

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

        Va voir http://shift.free.fr/(...)

        Tu vois dans mon code que mon bloc menu est avant le bloc du corps de ma page.
        Mon menu est fixe et le contenu prend la place restante.

        Maintenant imaginons que dans mon code mon bloc menu soit après mon bloc corps de page. Eh bien expliques moi comment avoir un menu de taille fixe et le contenu de la page qui prend la place restante.

        C'est con mais le CSS est censé séparer le contenu de la forme mais on dépend toujours de l'ordre du contenu pour la mise en page :(

        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: C'est mal(tm)(c)

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

          Personne pour me répondre ?
          Cela confirme donc quee les CSS ne permettent pas tout ce que les tableaux permettaient ?

          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: C'est mal(tm)(c)

            Posté par  . Évalué à 2.

            perso j'ai pas compris ce que tu veux

            Dam
            • [^] # Re: C'est mal(tm)(c)

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

              < div id="contenu" >
              contenu
              < /div >
              < div id="menu" >
              menu
              < /div >


              Je veux "menu" à droite de largeur fixe (disons 200 pixels) et "contenu" à gauche qui prends la place restante.

              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

              • [^] # ???

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

                #contenu {
                margin-right: 220px;
                margin-left: 20px;
                }

                #menu {
                position: absolute;
                right: 20px;
                width: 200px;
                }

                (avec des espacements de 20 pixels)

                ça marche pas ?
                • [^] # Re: ???

                  Posté par  . Évalué à 0.

                  right ne passera pas avec un navigateur trop ancien. C'est du CSS2 (je crois).
      • [^] # Re: C'est mal(tm)(c)

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

        En effets, les outils pour malvoyants ne lisent pas la CSS.

        Ils devraient http://www.w3.org/TR/REC-CSS2/media.html(...) . Le media braille ou aural c'est fait pour ça. Et les Aural stylesheets aussi http://www.w3.org/TR/REC-CSS2/aural.html(...)

        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: C'est mal(tm)(c)

        Posté par  . Évalué à 1.

        Je suis d'accord avec toi que parfois il y a des trucs pas faisable avec des CSS mais seulement avec des tableaux
        Tu peux me donner un exemple ?


        Je répondrai pour lui ...

        Si tu me donnais la réponse ce serait génial :)

        J'ai un menu à gauche, puis du contenu ailleurs.
        J'ai deux blocs (balise div donc ...), et je voudrai afficher les deux blocs l'un à coté de l'autre : un a gauche, un a droite.
        Avec les tableaux rien de plus simple : une ligne, deux colonnes, et hop c'est fini ! Avec les div on fait comment ?
        Les div s'affiche les uns en dessous des autres. Selon un article d'openweb,
        display: inline, résoudrait mon probleme car les div s'afficheraient en ligne.
        http://www.openweb.eu.org/articles/initiation_display/(...)

        Le problème, c'est que j'ai dautres div apres ces deux blocs, et ils s'affichent à droite du deuxieme bloc (au lieu de passer à la ligne).
        Bref j'arrive a faire ca :

        bloc 1 | bloc 2

        mais si jai le malheure de mettre un bloc 3 apres, jobtiens :

        bloc 1 | bloc 2 | bloc 3

        Mon but est donc d'arriver à

        bloc 1 | bloc 2
        bloc 3

        Je refuse l'utilisation de position : absolute, qui crée plutot un calque.

        Voili comment tu fais ?
        ;)
        • [^] # Re: C'est mal(tm)(c)

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

          Tu peux mettre bloc1 et bloc2 dans ton inline et bloc3 en dehors, ca résoud non? :)

          Sinon bloc1 et bloc2 en flottant - float: left par exemple - et bloc3 en clear: both
        • [^] # Re: C'est mal(tm)(c)

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

          #bloc3 {
          clear: both;
          ....
          }

          Non ?

          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: C'est mal(tm)(c)

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

            Le 'both' marche bien quand tu veux faire du multicolonne, mais comme dit plus haut ça ne passe plus sous IE4 alors que les tableau marche sur tous les navigateurs.

            Finalement, ce que j'ai fait pour http://doc.logiciellibre.net(...) , c'est mettre les tags de l'ossature de la mise en page dans des variables et de faire une détection de navigateur. Ca marche bien et j'ainsi au choix de l'XHTML avec table sous IE 4 ou de l'XHTML sans table pour les autres navigateurs.
            • [^] # Re: C'est mal(tm)(c)

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

              IE 4 il doit crever tout comme Netscape 4.
              Il y a des alternatifs et c'est pas en trainant des boulets au pied que l'on va faire avancer l'informatique.

              En plus les gens qui ont encore IE4 ou Netscape4 peuvent en changer. Si leur boite ne veut pas alors tant pis pour elle si elle veut restreindre son accès à certains sites.

              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: C'est mal(tm)(c)

                Posté par  . Évalué à 2.

                D'autant qu'en plus, si c'est bien fait, ça ne restreind rien, ça s'affiche juste différement ... c'est tout (l'information reste _accessible_ )

                Dam
  • # En fait...

    Posté par  . Évalué à 0.

    ...le débat HTML 4 / XHTML n'a pas de sens...
    tu peux utiliser celui que tu veux (en strict)...
    Ce qu'il faut juste c'est : pas de tableau, et séparer contenu et forme (donc full css)!
    • [^] # Re: En fait...

      Posté par  . Évalué à 0.

      « Ce qu'il faut juste c'est : pas de tableau, et séparer contenu et forme (donc full css)! »

      Non, ce qu'il faut, c'est juste que ça soit conforme au standard. Utiliser des tableaux ou pas, tant que c'est conforme, c'est une affaire personnelle.

      Par ailleurs, le css ne résoud pas vraiment la question de séparation de contenu, à moins de considérer (de manière vraiment amusante) les bornes xhtml/html comme du contenu... Et finalement, séparer le contenu n'est une chose positive que pour la personne qui gère le site, pas le lecteur (lui, il reçoit les deux de toute façon), c'est une donc question sans rapport ici.

      C'est pas parce que des choses sont théoriquements bonnes qu'il faut les ériger en règles absolues.
      • [^] # Re: En fait...

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

        Horreur !!!!!!!!

        Relis les balises XHTML et tu verras qu'elles ont des significations sémantiques :
        p = paragraphe,
        li = liste,
        em = mise en avant,
        a = hyperlien,
        img = image,
        table = tableau de données,
        q = citation,
        ...

        Elles ne sont pas à prendre au sens "affichage" mais bel et bien au sens sémantique (contenu).
        Et la séparation du contenu n'est pas uniquement positif pour le mainteneur du site mais bel et bien pour le visiteur. Je vais pas essayer de te convaincre car il y a plein de blogs et de sites qui l'expliqueront mieux que moi (en plus j'ai pas le temps ;).

        Les CSS ne ont pas théoriquement bonnes car il reste des lacunes, elles sont excellement pratiques et plein de personnes le confirmeront.

        Et puis si on lit les normes du w3c il est clairement expliqué qu'un tableau n'est pas fait pour faire de la mise en page et que les CSS sont faites pour.

        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: En fait...

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

          C'est intéressant ces informations sémantiques, je ne savais pas qu'ils avaient inclu ça. Une question que je me pose : est-ce que c'est pris en compte par les moteurs de recherche lors de l'indexation (par exemple, est-ce qu'un contenu em a plus de poids qu'un contenu mis entre balise ou ?.
  • # Bof

    Posté par  . Évalué à 5.

    IE4 ? C'est petit joueur.

    Si tu veux montrer que tu es un homme, un vrai, je te conseille d'essayer aussi d'être compatible avec Netscape 4 (0.3 % je crois, mais c'est toujours 0.3 % de trop). Tu auras alors le bonheur de découvrir que le CSS ça suxe grave, et qu'il est préférable de n'utiliser que les balises HTML et leurs attributs, même si ça triple la taille du code.

    Perso je n'ai rien contre la compatibilité ascendante, mais si les bases sont trop pourries, il faut savoir couper les ponts.
  • # Commentaire supprimé

    Posté par  . Évalué à 1.

    Ce commentaire a été supprimé par l’équipe de modération.

    • [^] # Re: standards != accessiblité

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

      En même temps c'est normal, dillo c'est un navigateur merdique /o\

      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

Suivre le flux des commentaires

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