• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Frage Wie kann man einen zusammenhängenen Block innerhalb einer Tabelle für den Ausdruck festlegen?

Dieter!

Neues Mitglied
Hallo, auf dem Screenshot sieht man eine Druckvorschau mit Speiseplan mit einer Tabelle von sieben Tagen. Für die nächten Wochen gibts weitere Tabellen mit jeweils
CSS:
 table    { page-break-inside: avoid; }
formatiert, soweit weit so gut. Nun hätte ich gerne, dass auch ein Tag innerhalb einer Tabelle zusammenhängend bleibt, in diesen Fall den Donnerstag auf die nächste Seite.
Versucht habe ich das Blockelemet "<section>" für ein Tag ins HTML einzubauen und dies auch mit "{ page-break-inside: avoid; }" zugewiesen, leider ohne Erfolg. Gibt es da noch andere Möglichkeiten? Ich würde nur ungerne für jeden Tag eine Tabelle ausgeben.

Screenshot 2021-07-30 132051.jpg
 
Ich hab die Erfahrung gemacht, dass mit jeder Änderung neue Schwierigkeiten auftreten. Dachte auch ich sehe den Wald vor lauter Bäumen nicht und es gäbe eine einfache Lösung dafür. Aber wenn dem nicht so ist, werd ich die Woche wohl in Tage (Tabellen) aufteilen.
 
Das funktioniert sicherlich, aber kann bei meinen Tabellen keine Position für den Seitenumbruch festlegen. Das entscheidet sich ja erst dann, wenn der nächste Tag nicht mehr auf die Seite passt. Was ja bei unterschiedlichen Seitenränder auch immer noch wieder anders ausfallen kann. Daher mein Versuch ein Tag mit <Section> zusammenhängend zu machen.
 
Kannst du den Zeilen , wo der Tag drinnen steht nicht eine Klasse geben und der klasse dann nicht das page-break-before geben ?


Oder funktioniert das nicht?
Habe mit page-beak auch noch nie gearbeitet
 
Doch das wüde gehen, damit hätte ich dann aber für jeden Tag eine Seite. Ich möchte ja schon, dass mehrere Tage auf eine Seite kommen wenns passt.

Kurze Hoffnung hatte ich gerade mit <tbody>. Jeden Tag in ein <tbody> und dann
CSS:
tbody    { page-break-inside: avoid; }
Funktioniert im Firefox super, im Edge leider nicht. Ich vermute, dass man mehrere <tbody>s nicht in einer Tabelle benutzen darf.

Kleines Update: Es dürfen zwar mehrere <tbody>-tags in einer Tabelle verwendet werden.
"tbody { page-break-inside: avoid; }" funtioniert leider trotzdem nicht im Edge.
 
Zuletzt bearbeitet:
Schon mal auf die Idee gekommen, das Ganze als PDF zu generieren?
 
Das kann man mit einer entsprechenden PDF-Library und PHP problemlos hinbekommen.
 
Zurück
Oben