J'ai un peu de retard la dessus mais vous savez la vie étudiante, toussa, je suis un peu occupé.

Bon alors le truc, c'est que le W3C relance les groupes de travail XHTML et HTML.

Le futur du HTML

Le X/HTML 5 sera en faite un mix de l'HTML 4 et du XHTML 1 que nous connaissons tous, seulement ces spécification assureront la rétro-compatibilité, et donc la présence de tous les défauts des versions précédentes (i, b, small, iframe et font seront donc toujours de la partie).

Cette future norme va laisser de grande libertés aux éditeur WYSIWYG, je pense que tous les Dreamweaver like se baseront dessus assez rapidement (la balise <font>, implémentation d'une "signature" pour les éditeur WYSIWYG : <meta name="generator" content="(WYSIWYG editor)" /> dont personne ne comprend l'utilité...)

Au menu des nouvelles balises on trouve :

  • <dialog> : qui permettra comme son nom l'indique de d'afficher des bloc de discussion, avec le pseudo entre <dt> et le texte entre <dd>.
  • <figure> : ultra pratique ! Cette balise va nous permettre de mettre des légendes sous nos images (à l'instar du print). On l'utilisera avec la balise <legend> (sous la forme <figure> <legend>Caption</legend> <img /> </figure>).
  • <m> : servira a "surligner" les mots d'une page qui aurait été saisi dans un moteur de recherche pour acceder à une page. Pas mal de site propose cette fonctionnalité à base de <span>, la balise <m> aura pour but de rendre cette bonne pratique sémantique.
  • Nouveaux attributs pour <input> : Les champs <input> disposeront de nombreux nouveaux type, en particulier concernant la saisit des dates (avec les valeurs datetime, date, time, week...). On retrouvera aussi des valeurs comme number pour la saisie exclusive de chiffre (avec e comme exposant si besoin), range (pour créer des slider !!), email et url).
  • <output> : Un champ de sortie pour les formulaires (par exemple <output name="result" onforminput="value = a.value + b.value">0</output> affichera la somme des champs a et b).

Le futur de l'XHTML

De grands changement vont ici être opéré, il n'est plus question de rétro-compatibilité, on rentre dans un monde full XML :) Le XHTML 2 va représenter un réel bon en avant, il sera chargé d'accueillir les autres technologie du W3C encore en développement.

Quelques nouveautés intéressante :

  • <nl> : Les liste de navigation (menu), actuellement nous utilisons des liste d'éléments pour nos menu, XHTML 2 nous proposera une structure plus sémantique grâce a cette balise dédié, il suffira de la mettre à la place des habituel <ul>.
    Cet élément acceptera aussi des <label> pour définir des titres de menu.
  • Le super attribut href : href="" pourra être utilisé sur toutes les balises ! En somme il sera tout à fait possible de mettre <li href="./">Accueil</li>.
    Ce nouveau comportement devrait causer la disparition de la balise <a> mais il semblerait que dans l'état actuel de l'écriture des normes, cette balise subsiste.
  • <acronym> disparait : La confusion entre les balises <abbr> et <acronym> sera résolu : il faudra toujours utiliser <abbr> pour tous les types d'abréviations.
  • b, i, small, big, tt, font et basefont sont rayé de la carte : toutes ces balises disparaissent, et elle ne vont pas nous manquer :)
  • <iframe> ? : Idem, poubelle cette chose hideuse :)
  • <hn> remanié : Les balises <h1> à <h6> vont être remplacé par un système de sections / sous sections. Nous n'utiliseront plus que des bloc de type <section> <h>titre</h> <p></p> <section> <h>Sous titre</h> <p></p> </section> </section>. Il sera alors beaucoup plus facile de visualiser la hiérarchie d'un document.
  • <blockcode> : Pour afficher du code (plutôt que d'utiliser <code> ou <pre>).
  • <separator> : Il remplacera les <hr /> (simple question de sémantique, les <hr /> étant trop souvent utilisé comme simple séparateur visuel, alors que leur fonction est de séparer une partie d'un document d'une autre).
  • Attribut edit : Il remplacera les <del> et <ins>, de la façon suivante : <span edit="deleted">XHTML</span> <span edit="inserted">XHTML 2.0 !</span>.
  • Attribut role : Applicable à tous les éléments, il sert à définir le rôle de chacun. Le gain sémantique est considérable et cet attribut devrait être bien utilisé.

Voilà je pense avoir fait le tour de la question, bien sûr tous ce qui est dit dans ce billet n'est pas a considérer comme aquis, toutes ces modifications sont actuellement en discussion au W3C, vous pouvez d'ailleurs prendre part aux débats concernant la conception du web du futur !

Pour conclure je dirais qu'il y a la de nombreuses bonnes idées, reste a voir de quelle façon et a quelle vitesse les navigateurs les implémenteront, et ça c'est loin d'être gagné :) Wait and see donc.