5176 sujets

Le Bar du forum

Bonjour à tous,

Tout d'abord je tiens à m'excuser si ce topic n'est pas au bon endroit. Après moultes hésitations, j'ai choisi ce forum car ce sujet touches plusieurs catégories simultanément.

Il s'agit là d'une question sur laquelle j'ai débatu sur IRC qui n'a malheureusement pas trouvé de réponse, mon interlocuteur et moi ayant des positions totalement différentes et des arguments dans chacun des cas. Je vous solicite donc pour essayer de trancher ou du moins pour éclaircir le sujet suivant.

Totu est venu lors d'une discussion sur le media web et ses outils, principalement CSS2 et xHTML 1.0 (ou 1.1, peu importe). L'emploi de balises génériques telles que <div> ou <span> dans un but simple de mise en forme relève-t-il simplement du hack CSS ?

Une définition du hack CSS stipule, selon mon confrère, qu'il s'agit du fait de jouer sur les différentes interprétations des propriétés ou de balises afin d'harmoniser le menu, mais aussi du fait d'utiliser une balise pour une utilisation à laquelle elle n'était pas destinée à l'origine.

D'où découle la question du but des balises span et div qui seraient, toujours selon la même personne, destinées à délimiter le texte auquel aucune balise ne correspondrait. Avec pour exemple les balises "Important, Question, Attention, etc..." présentes dans la mise en page de nombreux sites, comme le Site du Zero, pour ne citer que lui.

Ainsi, tout ajout superflu d'une balise générique serait considéré comme un hack. QU'en pensez-vous ?
Modifié par Deeder (24 Jul 2006 - 15:12)
Je connais effectivement cet item de la FAQ mais je ne parle pas de hack dans ce sens.

Je parle du fait de l'ajout d'un div conteneur par exemple, ou de l'ajout de toute autre balise générique uniquement destinée au style ou à la mise en forme de la page.

Cette balise qui n'a aucun sens sémantique, qui n'est ansi présente qu'à des fins visuelles, peut-elle être considérée comme une sorte de hack, une perversion du squelette HTML, et même quelque fois de sa sémantique ?
D'un point de vue descriptif, structurant et organisationnel les balises div et span sont de toute façon neutres.

Elles n'ont rien de particulier à faire dans le document html de ce point de vue (description, structuration). Mais leur présence n'informe en rien ledit document et donc ne pose pas de problème.
C'est toute la différence avec l'utilisation de <table> qui justement en arrive à décrire le document comme comprenant un tableau associatif alors que justement ce n'est pas le cas.

Les seules précaution concernant les balises neutres seraient leur emploi en lieu et place d'un descripteur pertinent et leur sur-utilisation alors que ce n'est pas utile.

Enfin parler de hack dans ce contexte est de toute façon, je trouve, mal venu et source de confusions. C'est aussi une invitation un peu dangeureuse au passage à la limite dans la logique du "html addict".
Modifié par clb56 (24 Jul 2006 - 17:04)
C'est ce que j'ai répondu mais son argument principal était le rôle des balises génériques qui ne sont pas dédiées à la mise en forme, mais selon lui, à encadrer le texte, les éléments auxquels aucune balise spécifique ne correspond.

C'est celà qui me parrait encore trouble à vrai dire : l'usage des balises génériques est-il destiné à la mise en page via CSS, ou est-ce une spécificité que l'on leur attribue par défaut, sans qu'elle ne soit jamais spécifiée dans aucune spécification ou aucun document officiel ?
Bonjour,

On relit la bible, qui ne pose aucune problème et qui (pour une fois Smiley cligne ) est tout à fait claire sur le sujet :

spécification HTML4.01 a écrit :
The DIV and SPAN elements, in conjunction with the id and class attributes, offer a generic mechanism for adding structure to documents. These elements define content to be inline (SPAN) or block-level (DIV) but impose no other presentational idioms on the content. Thus, authors may use these elements in conjunction with style sheets, the lang attribute, etc., to tailor HTML to their own needs and tastes.


div sert:
- à ajouter de la structure
- à supporter des styles CSS
- à ajouter des métadonnées
- à scripter
- etc.

Il faut avoir l'esprit assez mal tourné pour y voir une quelconque perversité Smiley cligne
Hum merci bien, j'ai enfin une réponse concise et précise à ma question, s'appuyant sur la documentation officielle. Smiley smile

Pour ce qui est du hack, la formulation est effectivement mauvaise, je pensais plutôt à un détournement du code, des fonctions originelles de ces balises. C'est vrai que ça peut porter à confusion ainsi exprimé, mea maxima culpa. Smiley cligne
Deeder a écrit :
C'est ce que j'ai répondu mais son argument principal était le rôle des balises génériques qui ne sont pas dédiées à la mise en forme, mais selon lui, à encadrer le texte, les éléments auxquels aucune balise spécifique ne correspond.


Et en apportant quelle spécificité, quelle description particulière ?...
... aucune en fait.

Ensuite que les balises neutres soient soumises elles aussi à l'alternative block/inline, cela oui bien sur.


<hors sujet>
la balise <div> est tout à fait fascinante en ce qu'elle répond à la balise <p>

Autant <p> est l'élément avec lequel s'arrête toute possibilité d'imbrication d'éléments de type block et (hypothèse) n'est rien d'autre que cela.
Autant <div> est l'élément avec lequel n'importe quelle imbrication d'éléments de type block est possible et (quasi certitude) n'est rien d'autre que cela.

Smiley confused Heu...
... finalement ...

... Est ce que <p> ne serait pas aussi une balise neutre ? Smiley langue
</hors sujet>