Mercredi 1 Aout 2007
XHTML Transitional et Strict
Par Jacky, Mercredi 1 Aout 2007 à 03:52 GMT+2 dans Le XHTML
Différences d'éléments en XHTML Transitional et Strict
"Certains éléments, comme strike ou iframe, ne sont
plus disponibles en XHTML Strict.
Comment les remplacer ?"
Voici quelques éléments de XHTML Transitional qui sont absents de XHTML Strict : dir, menu, center, isindex, applet, font, basefont, s, strike, u, iframe et noframes.
A cela s'ajoutent des attributs également absents entre les deux spécifications : target pour <base>, <a>, <area> et <link> ; language pour <script> ; bgcolor, text, link, vlink et alink pour <body> ; align pour <div>, <p> et les <h#> ; type, compact, start et value pour <ul>, <ol>, <li> et <dl> ; align, noshade, size et width pour <hr> ; width pour <pre> ; clear pour <br> ; name, align, border, hspace et vspace pour <object>, <param>, <img> et <map> ; name et target pour <form> ; align pour <input> ; bgcolor et align pour <table> ; nowrap, bgcolor, width et height pour <tr>, <td> et <th>.
Ces restrictions peuvent frustrer nombre de développeurs qui faisaient un usage fréquent de ses éléments ou attributs, mais la réflexion du W3C a été d'éliminer tout ce qui n'avait pas sa place dans une spécification de balisage, et qui était déjà disponible via CSS.
Ainsi, nombre des éléments éliminés peuvent être remplacés par une combinaison d'un élément <div> (ou <span>) et de la règle CSS adéquate.
Par exemple pour strike, u et center :
#barre
{ text-decoration: line-through; }
#souligne {
text-decoration: underline; }
#centre {
text-align: center; }
Les <iframe> sont également couramment utilisées, voici comment les imiter (le contenu de la "frame" sera chargé via XMLHttpRequest ou un langage serveur) :
.iframe
{
overflow:auto;
width:400px;
height:300px;
padding:20px;
border:solid 1px
black;
}
La plupart des éléments enlevés sont ainsi remplaçables par CSS. menu, pour sa part, est à remplacer par une combinaison de liste avec CSS, tout comme dir.




