28173 sujets

CSS et mise en forme, CSS3

Bonjour,

je suis en train d'essayer de faire un fichier CSS qui ne sera utilisé qu'à l'impression grace au header
<link href="css/print.css" media="print" 
rel="stylesheet" type="text/css" />


Je m'en sors à peu pres mais j'ai un probleme de décalage. Je m'explique :
je veux que certaines zones de ma page ne soient pas éditées. J'ai donc quelques paragraphe ou autres balises qui ont une certaine mise en forme dans ma page et qui deviennent dans mon print.css
p.noimp, div#header,h2, p.choix_sem, div#menu, .plus {
	 visibility: hidden;
}


Probleme :
ces zones disparaissent bien à l'édition mais il reste un espace vide (comme une marge).
Je ne veux pas que ces zones soient simplements cachées, je voudrais qu'elle disparaissent, laissant ainsi les autres zones "remonter" dans la page.

Merci de votre aide
Modifié par sebhm (04 Jul 2007 - 14:02)
Bonjour,

Pour cela il faut utiliser:
display:none


9.2.5 La propriété 'display'
css2 a écrit :
none
cette valeur fait qu'aucune boîte n'est générée par l'élément dans la structure de formatage (c.à.d., cet élément n'a pas d'influence sur la mise en forme du document). Les éléments qui en descendent ne génèrent pas de boîtes non plus ; on ne peut plus modifier leur comportement avec la propriété 'display'.

Noter qu'une valeur 'none' ne crée pas de boîte invisible, elle ne crée pas de boîte du tout. CSS comprend des mécanismes permettant la génération de boîtes dans la structure de formatage, boîtes qui influencent la mise en forme mais qui ne sont pas visibles. Consulter la partie traitant de la visibilité pour les détails ;
sebhm a écrit :
C'était si simple !!!

Merci beaucoup !
je vous aime

Un petit [Résolu] pour fêter l'évènement ?!? Smiley ravi