Bonjour,

J'ai une petite question que je ne sais où placer :

Les éléments en-ligne doivent être placés normalement dans des éléments block.
Dans mon cas, j'ai une image flottante, donc qui se transforme en block automatiquement.
Pour être dans les standards faut-il dans ce cas là l'inclure malgré tout dans un élément block ou bien ce n'est pas nécessaire?

merci.
Modifié par gauguin (07 Mar 2006 - 13:09)
salut,

si ton image n'a pas besoin d'être mise dans un conteneur block particulier avant l'attribution d'un comportement flottant alors elle n'en n'a pas besoin après.

a contrario si elle doit être placée dans un conteneur de type block d'un point de vue html (pour ne pas être enfant direct de body notamment) alors cela reste vrai quelque soit la propriété css que tu appliques, y compris float.
Modifié par clb56 (02 Mar 2006 - 14:19)
Merci pour la réponse mais je ne comprends pas bien, à vrai dire les deux paragraphes (pour moi) me disent le contraire.

Dans le premier tu me dis que si elle n'a pas besoin d'un div pour la mise en page je ne suis pas tenu de la mettre dans un div, et dans le deuxième je comprends qu'il faut en mettre un de toutes façons quelque soit la propriété qu'on lui applique.

Cela dit ta réponse est éclairante car il est vrai que logiquement un élément en-ligne ne doit pas être un enfant direct de body.
Je vais donc la mettre dans un div.

ps: j'en profite pour signaler qu'un petit espace se crée entre le bas de l'image et le bord bas du div. Pour le supprimer il faut déclarer pour l'image display:block;
gauguin a écrit :

Dans le premier tu me dis que si elle n'a pas besoin d'un div pour la mise en page


Non pour la mise en code (html) et je dis bien si (et seulement si).
merci pour ta réponse.

Dans mon élan j'en profite pour compléter mon ps du troisième message:

L'espace vertical qui se crée quand une image est dans un div entre le bas de l'image et le bord bas du div peut-être aussi résolu (sans mettre l'image en display:block;) en précisant pour le div :

line-height:0;

c'est probablement que le navigateur met une hauteur de ligne par défaut quand on met un élément en-ligne (là une image en l'occurence) dans un div

[Résolu]
Modifié par gauguin (02 Mar 2006 - 16:06)