Próbuję poprawić wygląd dokumentów HTML drukowanych przy użyciu pakietu Webkit, w tym przypadku uzyskując pewną kontrolę nad tym, gdzie występują podziały strony.Sterowanie łamaniem stron CSS podczas drukowania w pakiecie Webkit
jestem w stanie wstawić podziały stron gdzie potrzebne przy użyciu:
page-break-after: always;
Jednak nie mogę znaleźć sposób, aby uniknąć przerw strona jest umieszczona w środku przedmiotów. Na przykład mam tabele html, które nie powinny być dzielone w środku na wiele stron. Odniosłem wrażenie, że uniemożliwiłbym wstawienie strony do elementu, ale wydaje się, że nic nie robi. Mój kod wygląda następująco:
.dontsplit { border: 2px solid black; page-break-inside: avoid; }
<table class="dontsplit">
<tr><td>Some title</td></tr>
<tr><td><img src="something.jpg"></td></tr>
</table>
Pomimo page-break-wewnątrz: unikać dyrektywę wciąż otrzymuję podział tabeli pomiędzy pierwszym i drugim rzędzie na oddzielne strony.
Wszelkie pomysły?
Sprytnie! Już prawie miałem się poddać. Niestety wygląda na to, że nie działa, jeśli masz więcej niż jeden td w tr, nawet jeśli sprawisz, że wszystkie należą do klasy. – Myforwik
@Myforwik - jeśli wysokość tych TD jest różna, dzielenie wydaje się domyślnie najkrótszym div (albo to, albo pierwszy zadeklarowany div w wierszu - nie zakończyło się eksperymentowaniem). Rozwiązaniem, które mi pomogło, jest - po fakcie - sondowanie każdego elementu div w wierszu za pomocą javascript i ustawienie wysokości za pomocą jquery na najwyższy div. To podejście działa dobrze na .11rc1 – herringtown
.dontsplit {page-break-inside: avoid; } dodane do DIV działa w Firefox v54.x – MarcoZen