OVH Cloud OVH Cloud

[CSS] Ne pas afficher les espaces entre les blocs

3 réponses
Avatar
Jean-Marc Molina
Bonjour,

Je cherche un moyen pour que les espaces entre les blocs d'une page XHTML
utilisant les CSS2 ne soient pas affichés. Le message
news://20020723000612$027b@vinc17.org posté en 2002 présentait déjà le
problème mais aucune solution n'avait été donnée. Tout l'intérêt serait de
permettre le formatage de son code XHTML et que les caractères d'espacement
(retour à la ligne, tabulation) n'aient aucun impact sur le rendu visuel de
la page. Ceci afin qu'il n'y ait aucun espace blanc entre les blocs.

Étonnamment IE supporte cette fonctionnalité... Par défaut :). Certains
diront... malgré lui ^^. Ça n'est pas le cas de Mozilla, bien entendu. Je
pensais trouver mon bonheur avec la propriété white-space des CSS2 mais elle
ne permet pas d'ignorer ces caractères d'espacement.

Page HTML, CSS et captures d'écran des rendus Firefox et IE :
http://jmmolina.free.fr/t_29849/

Notez la présence d'une anomalie dans le rendu des bordures des blocs des
images sous Firefox. Aucun problème sous IE. J'ai volontairement retiré tous
les espaces pour le premier bloc d'images, aucun espace entre les balises
div. Pour les autres lignes on peut voir des espaces horizontaux entre les
bordures de chaque bloc. Pour tous les blocs il y a des espaces verticaux.

Enlever les caractères d'espacement ne suffit pas puisque cela ne résoud pas
le problème des espaces verticaux. Et ce, même en mettant les propriétés
margin et padding à 0 pour tous les blocs (propriété *). Puis surtout le
code HTML est alors complètement illisible.

--
Jean-Marc.

3 réponses

Avatar
Philippe Chaissac
Jean-Marc Molina a écrit :
Bonjour,

Je cherche un moyen pour que les espaces entre les blocs d'une page XHTML
utilisant les CSS2 ne soient pas affichés. Le message
news://20020723000612$ posté en 2002 présentait déjà le
problème mais aucune solution n'avait été donnée. Tout l'intérêt serait de
permettre le formatage de son code XHTML et que les caractères d'espacement
(retour à la ligne, tabulation) n'aient aucun impact sur le rendu visuel de
la page. Ceci afin qu'il n'y ait aucun espace blanc entre les blocs.

Étonnamment IE supporte cette fonctionnalité... Par défaut :). Certains
diront... malgré lui ^^. Ça n'est pas le cas de Mozilla, bien entendu. Je
pensais trouver mon bonheur avec la propriété white-space des CSS2 mais elle
ne permet pas d'ignorer ces caractères d'espacement.

Page HTML, CSS et captures d'écran des rendus Firefox et IE :
http://jmmolina.free.fr/t_29849/



En gros, tu mets des espaces et tu râles parce-qu'ils apparaissent ;-) ?
Il est normal que plusieurs espaces soient concaténés en un seul, mais pas
qu'ils soient purement ignorés, dieux merci ! Pour ton problème, si tu veux
vraiment séparer les div "thumb" des espaces, il faut les sortir du flux en
les mettant en float:left par exemple (et faire la même chose avec leur
contenant, "row", et aussi avec "main" pour les espaces verticaux). Mais
bon, il faut aussi se demander pour des mises en formes de ce type :

- à quoi sert l'élément div "thumb" en l'occurence (un class="thumb" sur les
images et un display:block dans la définition de "thumb" ferait la même
chose, halte au "div" inutile :-) !)
- si, vu le nom utilisé "thumb", c'est bien pour faire de l'affichage de
vignettes, autant en profiter pour ne pas fixer la largeur et le nombre de
colonnes... Quelques images en float:left (ou des div si on doit ajouter une
légende, par exemple) feront parfaitement l'affaire.
- Si on tient au nombre de colonnes, est-ce que cela ne nécessite pas
l'utilisation d'un tableau ?
Avatar
Sergio
Jean-Marc Molina avait énoncé :

Je cherche un moyen pour que les espaces entre les blocs d'une page XHTML
utilisant les CSS2 ne soient pas affichés. Le message
news://20020723000612$ posté en 2002 présentait déjà le
problème mais aucune solution n'avait été donnée. Tout l'intérêt serait de



Astuce à la con, mais qui marche :
<div id="div1">
.....
</div

<div id="div2">


.....
</div

<div...>



C'est pas très présentable mais...

--
Serge http://leserged.online.fr/
Mon blog: http://cahierdesergio.free.fr/
Soutenez le libre: http://www.framasoft.org
Avatar
Sergio
Sergio a formulé la demande :

Astuce à la con, mais qui marche :
<div id="div1">
.....
</div

<div id="div2">


.....
</div

<div...>



C'est pas très présentable mais...



Truc à la con de mon lecteur de news :
Il transforme le < en tête de ligne par un | Le lecteur rectifiera de
lui-même !
(le truc que j'explique c'est de mettre les espaces superflus dans la
balise avant le > et de coller le < de la balise suivante sur ce >).

--
Serge http://leserged.online.fr/
Mon blog: http://cahierdesergio.free.fr/
Soutenez le libre: http://www.framasoft.org