5176 sujets

Le Bar du forum

L'autre jour j'ai fais une trouvaille assez cool, alors que j'écrivais une page en XHTML 1.1. Comme j'avais une liste numérique qui s'étallait sur plusieurs page, j'ai tout naturelement - et comme à notre habitude Smiley smile - pensé à utiliser la balise <ol>. J'ai ensuite placé entre le couple <li> et </li> chacun des éléments à lister. Et c'est là que j'ai eu l'idée d'ajouter une précision : l'attribut value= ! Smiley murf
Ainsi, avec une touche de PHP, chaque ligne s'incrémente et ce quelque soit la page sur laquelle je suis Smiley ravi D'où par exemple :
<ol>
<li value="51">Une info listée.</li>
</ol>


Bref, j'étais assez content (je ne m'en cache pas Smiley lol )

Mais ça n'a pas duré longtemps, car après une tentative de validation sur W3C, cet attribut s'est avéré ne pas faire parti de l'XHTML :

a écrit :


You have used the attribute named above in your document, but the document type you are using does not support that attribute for this element. This error is often caused by incorrect use of the "Strict" document type with a document that uses frames (e.g. you must use the "Transitional" document type to get the "target" attribute), or by using vendor proprietary extensions such as "marginheight" (this is usually fixed by using CSS to achieve the desired effect instead).

This error may also result if the element itself is not supported in the document type you are using, as an undefined element will have no supported attributes; in this case, see the element-undefined error message for further information.

How to fix: check the spelling and case of the element and attribute, (Remember XHTML is all lower-case) and/or check that they are both allowed in the chosen document type, and/or use CSS instead of this attribute.


Or c'est dommage car, outre le fait que cela fonctionne aussi bien sous FireFox qu'IE, je crois que ça n'aurait pu qu'apporter un certain enrichissement informationnel au contenu. Et pour cause : une liste numérique pourrait tout à fait ne pas commencer au début Smiley confus

Voilà pour la remarque Smiley cligne

Bon dimanche.
Bonjour,

value et start disparaissent bien avant XHTML1.1 : dès HTML4.01 strict, en fait.

La raison : dans la démarche de séparation structure / présentation d'HTML CSS, les marqueurs de listes devaient être gérés uniquement via CSS.

Malheureusement, seul Opera a implémenté dès l'origine les propriétés CSS2.0 touchant aux marqueurs de liste... ce qui a conduit à leur disparition de CSS2.1, faute d'implémentation ailleurs.

Très joli flop des navigateurs "standards" Mozilla, sur ce coup-là...
Modifié par Laurent Denis (27 Nov 2005 - 14:39)
Pour tout dire, la dépréciation de start et de value est très discutable : il s'agit bien plus d'informations structurelles que de décoration Smiley cligne
Aie c'est ballo Smiley rolleyes . M'enfin avec CSS3 il y a peut-être encore un espoir alors Smiley ohwell
En tout cas pour ma part j'avoue ne pas vraiment être apte à pouvoir classer cette précision soit dans l'information, soit dans sa présentation.
Modifié par tsing (27 Nov 2005 - 14:45)
En cherchant un peu, je viens de tomber sur un document du W3C (à l'adresse là) :
a écrit :
/* The start attribute on ol elements */
ol Smiley start { counter-reset: list-item attr(start, integer, 1); counter-increment: list-item -1; }


Mais en y réfléchissant, je me vois mal l'utiliser compte tenu du fait qu'il s'agisse d'une précision conjoncturelle : elle se doit d'être précisé dynamiquement selon la longueur de la liste - j'utilise pour cela PHP - et il est vrai qu'en général, on ne génère par convention pas dynamiquement la présentation des données (que je stoque dans des fichiers .css Smiley biggol ), contrairement aux informations dans mes pages .php.
Tout ça pour dire que c'est assez regretable de ne pas pouvoir utiliser ce code avec XHTML :

<ol start="51">
<li></li>
</ol>

Modifié par tsing (27 Nov 2005 - 15:02)
Puisque tu utilise php, tu peux faire un

ol{list-style: none;}

et généré le numéro avec php directement Smiley cligne
Juste (étonné que Laurent Denis n'ait pas réagi), rassure-moi, tu sers ton xHTML 1.1 en application/xml+xhtml ? Parce qu'il faut ! Donc tu n'as pas d'utilisateurs sous IE ? Smiley lol

@+, HoPHP
tsing a écrit :

Tout ça pour dire que c'est assez regretable de ne pas pouvoir utiliser ce code avec XHTML :

<ol start="51">
<li></li>
</ol>


Petite confusion : il t'est tout à fait possible de l'utiliser en XHTML1.0 transitional (comme en HTML4.01 transitional). Cela peut en fait être une excellente raison d'opter pour ce format précis. Faut-il rappeler qu'XHTML1.1 n'est pas, a priori, le format préférable dans l'absolu ? Qu'XHTML1.0 strict non plus ? Etc ? Le bon format est celui qui répond aux besoins Smiley cligne
Laurent Denis a écrit :


Un brin de lassitude, je crois Smiley cligne


Par cela devrions nous considérer que le grand commun et quota des visiteurs ne cherchent qu'a "résoudre" (ou trouver l'information pouvant à...) le problème auquel ils sont confrontés sans pour autant se permettrent d'aller plus alors que leurs capacités d'évolution sont énormes (j'entends par là que seuls quelques uns parmis la masse se distinguent en allant chercher plus loin que le bout de leur nez...) ?

(Ne prenons pas ceci comme une remarque négative ou autre mais plutôt comme un constat...).
A part ça, personnellement, je trouve que les numéros qui sont devant chaque item d'une liste ordonnée ne sont pas de la décoration, je trouve que c'est une information qui peut être importante selon le contexte. A contraster avec les puces des listes ul, qui sont, elles, de véritables décorations.