Rigueur. Et passion !

Ne dites pas à ma mère que je suis artisan en architecture de l'information appliquée aux sites web : elle croit que je suis webdesigner, intégrateur HTML & CSS, rédacteur web, formateur NTIC et consultant en webmarketing depuis 2001 ! Voulez-vous en savoir plus ?

Le blog de l'intégrateur web

Quelques notes sur XHTML et CSS, au fil de l'eau…

Article en plusieurs parties : 1 2 3

Le quotidien de l’intégrateur XHTML et CSS est parfois ponctué de vide téléologique concernant les bonnes balises à utiliser en fonction du type de contenu. J’ai longtemps cherché à produire un document-type pouvant servir à n’importe quelle commande. Hélas ! Chaque projet demande des réponses graphiques et structurelles ajustées. Néanmoins, je ne résiste pas au plaisir de partager avec vous, à l’occasion du 100ème jour depuis la mise en ligne de css4design, une sorte de medley mashup de quelques thèmes liés à l’intégration web. Restez vigilant : malgré toute l’attention apportée à la rédaction de ce billet, il reste encore des traces d’humour sous le tapis de souris.

… ou comment sortir « téléologique1 » du même chapô que « mashup2 »

Le design : centré, fixe, liquide…

C’est sur ces contraintes de structure mettant en jeu les balises XHTML que je voudrais m’attarder un peu en votre compagnie. Notre mise en pages doit-elle être de largeur fixe, ou variable ? Centrée, ou pas ? Il m’est difficile de choisir à votre place, mais en ce moment la tendance est de présenter des pages de largeur fixe, centrées dans le navigateur.

Dans l’échantillon de code qui suit, on crée un container d’une largeur de 750 pixels, centré horizontalement grâce au raccourci margin: 0 auto. Ainsi, tout le contenu placé dans la balise identifiée par #container sera centré dans la page.

html, body {
     margin: 0;
     padding: 0;
     text-align: center;
}
#container {
     position: relative;
     width: 750px;
     margin: 0 auto;
     text-align: left;
}

La position: relative n’est pas indispensable pour le centrage, mais permet d’initialiser les valeurs top et left à partir du point situé en haut et à gauche de notre container, et non plus à partir du coin supérieur gauche de la fenêtre du navigateur, comme c’est le cas par défaut, avec bien sûr, des différences entre les navigateurs.

C’est pourquoi, il est judicieux de mettre le padding et le margin des balises html et body à zéro. Par ailleurs, IE5 ayant du mal avec margin: 0 auto, on prendra soin de centrer l’ensemble du document avec text-align: center, et ensuite d’expliciter la valeur d’alignement du texte par défaut dans le container.

MAJ : Pour la remise à zéro des style par défaut des balises HTML, je vous invite à lire 5 Resets CSS à la loupe pour une remise à zéro des valeurs par défaut des navigateurs pour en savoir plus.

Dans la plupart ces cas, le choix d’un design à largeur fixe permet de mieux contrôler le nombre de mots par ligne pour offrir une lecture confortable (qu’on trouve raremment dans les pages où le texte s’étire d’un bout à l’autre de la fenêtre du navigateur…). A condition toutefois de permettre l’agrandissement de la taille du texte, en utilisant des unités relatives em, ex ou %, à la place des px qu’IE ne sait pas agrandir…

Dans d’autres cas, ce choix est dicté par les difficultés liées à la conception d’un design liquide (ou fluide) comportant des visuels en haut, en bas, sur les côtés et dans les coins ! En effet, si la réalisation d’un design composé d’images qui se répètent verticalement est aisée, ce n’est pas toujours le cas lorsqu’on veut que la mise en pages s’adapte horizontalement et verticalement à la taille de la fenêtre (cf. mon billet «Design CSS : fixe, élastique ou liquide ?» pour plus d’information sur la question).

Une page web toute simple »

Article en plusieurs parties : Page suivante

PS : Le respect de la vie privée sur internet est important : j'ai décidé d'échanger mon bouton Like de Facebook par un bouton Faire un don de Paypal car Il n'y pas d'amour, il n'y a que des preuves d'amour (Jean Cocteau) ;) Merci d'avance.



8 commentaires pour “Quelques notes sur XHTML et CSS, au fil de l'eau…”

  1. Pierre6020 dit :

    Il faut tout de même préciser qu’IE 6 respecte tout à fait le modèle de boîte standard, sauf si aucun Doctype n’est spécifié, ou encore qu’un prologue xml est utilisé (ce qui est illogique puisque IE 6 n’accepte pas le XHTML en application/xml).

    Quand à IE 5… Voilà maintenant 5 ans (!) qu’IE 6 existe.
    On passe à autre chose ?

  2. Je n’en ai pas parlé explicitement puisque le sujet était abordé dans le lien donné au début paragraphe "Pour la boite, vous prendrez quel modèle ?". Mais suite à votre commentaire, je pense rajouter une phrase sur le sujet ;)
    Concernant l’obsolescence d’IE5, je suis assez d’accord, surtout quand je lis dans mes stats que les utilisateurs d’IE5.x ne représentent pas 1%

  3. Intéressant de parler de cela a 15 jours de l’arrivée de Internet Explorer 7, qui d’ailleur va poser problème pour nous intégrateur :

    – L’installation d’ie7 va être *obligatoire*
    – Aucun retour vers ie6 ne sera possible.

    Alors que beaucoup d’entreprises ont des systèmes personnalisés pour gérer les installations des mises à jours, comment on va faire nous pour tester un site internet sous :
    – Firefox
    – Ie6
    – Ie7

    ? De plus certaines entreprises sont encore resté à ie5 ou ie4 … comment faîtes vous pour gérer cette problèmatique ?

    Merci.

  4. br1o dit :

    Le fait qu’IE7 supporte un peu mieux les standarts qu’IE6 suffit à me rendre heureux qu’il soit obligatoire et irréversible ;)

    Pour tester sous IE6 après avoir installé IE7 ? Je suis resté à w2k et n’ai donc pas la possibilité de tester sous IE7 ;)

    Comme je l’ai précisé dans le billet, les commentaires conditionnels sont nos amis (pour la vie ?) pour rendre un site visible par toutes les versions d’IE, sans pour autant sacrifier la pureté de la feuille de style "standard". Et pour tester dans différents navigateurs, j’utilise l’excellent browsershots.org/ ;)

  5. Eric dit :

    je ne comprend pas pourquoi doit on s’évertuer à utiliser des div pour la trame de base alors qu’un simple tableau permet facilement de créer des colonnes, un titre un footer, etc…

    ma remarque est stupide ?

  6. br1o dit :

    @Eric -> En règle générale, je ne m’évertue pas à pousser quiconque à ne plus utiliser les tableaux pour autre chose que la mise en forme des données tabulaires…
    J’essaie simplement de partager ce que je connais du design web ; la mise en page par tableaux n’en fait tout bonnement pas partie (enfin, plus depuis pas mal d’années déjà ;)

    Je me suis vite rendu compte qu’afficher un site "full table" sur un PDA était une expérience très décevante sur le potentiel des "table" en matière d’universalité d’accès au contenu… c’était il y a 4 ans, j’ai changé de PDA depuis ;)

    Pour connaître toutes les implications de l’accessibilité, je vous propose de rendre visite à quelqu’un de plus qualifié, à l’adresse http://www.blog.webatou.be/

    P.S. Ca me donne presque envie d’écrire un petit billet sur ce troll de sujet : table vs div ;)

  7. Eric dit :

    Merci pour ta réponse.

    Je suis en train de refaire entièrement le site zyvon, étant plutôt programmeur et non graphiste au départ, je suis très friant de conseils d’experts.

    Je galère un peut à faire la trame de mon nouveau site qu’avec des divs et j’imaginais faire une version spécifique du site pour pda/telephone (genre mobile.zyvon.com) car le contenu d’un site qui s’affiche sur un mobile et bien évidement adapté : on affiche le strict minimum (et sans faire des pirouetes genre display:none; :-)… enfin j’imagine.

    Etant un lecteur assidu de ce site, un billet sur table vs div serais interressant.

  8. Valider du XHTML avec un XML Schema

    Comme ce n’est pas indiqué dans la recommendation du W3C sur XHTML 1.0, il est possible de valider du contenu avec un XML Schema! Dans la recommendation, il n’y avait que des DTD, mais c’est de moins en moins usité… Le XML schema se trouve .

Laissez un commentaire

Vous pouvez utiliser les balises HTML suivantes : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Les commentaires sont publiés sous votre pleine et entière responsabilité et ne doivent pas contrevenir aux lois et règlementations en vigueur. Les propos racistes ou antisémites, diffamatoire ou injurieux, divulguant des informations fausses, relatives à la vie privée d'une personne ou utilisant des oeuvres protégées par les droits d'auteurs ne sont pas les bienvenus et seront modérés sans modération.

Merci d'être constructif et n'oubliez pas : « sans la liberté de ramer il n'est point d'éloge flotteur ! »



Colophon

css 4 design est une publication irrégulomadaire à tendance hebdomadaire
éditée par Bruno Bichet qui carbure à WordPress et au café équitable.
Tous droits réservés © 2006 - 2010.

Contactez l'auteur du site

Google Analytics Alternative