28172 sujets

CSS et mise en forme, CSS3

Bonjour.
Je reviens avec une question un peu compliquée. Stimulé par les récents conseils de nos modérateurs, j'ai repris mes pages. J'ai refondu mes feuilles de style, en regroupant un certain nombre de sections, et modifié en particulier les unités de mesure ( un bon nombre de mesures sont maintenant en em ).
Tout va bien, sauf au moment d'imprimer mes pages ( ce sont essentiellement des supports de cours pour mes élèves ). En effet, je ne sais pas pourquoi, la première page est OK, mais dès la seconde page, il n'y a plus de margin-top. La première ligne ( h2, "séance 01" sur la page ) est collée en haut de la feuille, quelque soit la valeur de margin de l'élément conteneur ( .seance et .bandeau ). La seconde ligne ( h3, "Les Mille et Une Nuits" sur la page ) est presque à la même hauteur que h2, alors qu'il devrait être en-dessous.
Curieusement, quand j'introduis une ligne
.bandeau { border:1pt solid white; } 

dans la feuille print.css, tout redevient ok ( au niveau du placement des éléments h2 et h3 en haut de la page ) à l'impression.
Donc, deux problèmes :
1. Le placement de h2 et h3
2. margin-top pas pris en compte
Une idée ? En passant, est-ce que je fais bien de mesurer en em ?

P.S. La page en question : http://www.trusiad.fr/cours/cours/1001nuits.html

P.S. 2 Je sais que la hiérarchie des titres n'est pas correcte, c'est pour changer tout cela que j'ai repris la feuille de style.
Modifié par trusiad (14 May 2009 - 14:57)
Hum.
Bon. Je ne trouve pas pourquoi il ne prend pas en compte mon margin-top et décale les éléments. Mais une bordure en haut suffit pour remettre les éléments d'aplomb.
Du coup, j'ai imaginé un hack très laid ( comment dit-on hack en français ? Bidouillage ? Supercherie ? Tricherie ? ) :

.seance { margin:0 1cm 1cm 1cm;border-top:1cm solid white; }

Modifié par trusiad (14 May 2009 - 20:54)