Thomas Luethi: CSS-Formatierung für Druck

Beitrag lesen

Hallo,

Ich habe eine Tabelle mit Daten, die ich gerne auf einem A4-Blatt im Querformat ausdrucken würde.

@page {
  size:landscape;
  margin-top:0cm;
  margin-bottom:0cm;
  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
font-size: 10pt;
}

Die Font-Angaben haben IMHO in @page { } nichts verloren.

body {
font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
font-size: 8pt;
}

8pt ist winzig. Da muss man ja die Lupe nehmen.
Ich wuerde nicht unter 10pt gehen.

table {
border-collapse: collapse;
border: none;

Entweder Kurz-Schreibweise:
border: 0 none;
Oder ausfuehrliche Schreibweise:
border-style: none;

Ist aber sowieso ueberfluessig, da standardmaessig kein Border gemacht wird.

Allerdings druckt sowohl Opera als auch Mozilla (1.6a) im Hochformat (portrait). Opera füllt dabei nur jeweils 2/3 der Seite mit Daten, der Rest ist bist zum Seitenumbruch leer. Dabei werden auch keine Datensätze ausgelassen.

Was mache ich falsch?

Du gehst davon aus, dass die Browser CSS vollstaendig verstehen und umsetzen.
Tun sie aber nicht.
@page { size:landscape; }
koennen offenbar erst die wenigsten Browser.

Opera kann es scheinbar soweit, dass es zwar den Inhalt, den es drucken will,
auf Querformat anpasst, deshalb kriegst Du auch 2/3 gefuellte Seiten.
Die Wahl des Papierformats (Querformat) musst Du aber nach wie vor manuell
in den Druck-Einstellungen machen.

Du hast folgende Moeglichkeiten.
1 - Sorge dafuer, dass Deine Seiten auch im Hochformat druckbar sind
     (d.h. nichts breiter als 600px.)
2 - Fordere die Benutzer auf, die Seiten von Hand im Querformat zu drucken
3 - Mach eine PDF-Druckversion

Ich wuerde 1 anstreben, alternativ 2.

Gruesse,

Thomas
  bekennender PDF-Hasser.