2009-08-03 10 views
5

Ho una tabella HTML di dati in cui ogni cella può avere più righe di testo. Quando la tabella viene stampata, è possibile che una riga venga spezzata in modo che alcuni dati appaiano nella parte inferiore della prima pagina e alcuni appaiono nella parte superiore della successiva. Esiste un equivalente della funzionalità "mantieni insieme" di Word che impedirà il verificarsi di un'interruzione di pagina all'interno di una riga della tabella? Penserei che questo sarebbe un problema comune, ma l'unica "risposta" che ho trovato era nascosta su un certo sito web con trattino. :)Come mantenere un elemento <td> da apparire su più pagine quando stampato da IE?

Aggiornamento: I dati saranno visualizzati utilizzando IE 7, che sembra non gestisce correttamente la proprietà "page-break-inside" (se non del tutto). Ci sono alternative? È qualcosa a cui jQuery può aiutarti?

risposta

5

prova:

Il modo CSS2-friendly per farlo sarebbe
td {page-break-inside: evitare; }

vedere il page-break-inside definition

da: http://channel9.msdn.com/forums/TechOff/35322-Keep-with-next-when-printing-HTML-tables/

+0

ha un senso, ma l'applicazione non sembra avere alcun effetto sui risultati di stampa. Sta ancora rompendosi dove vuole. Ho anche aggiunto alcune altre cose per assicurarsi che l'elemento CSS veniva raccolto (che era), ma non è che interessano le interruzioni di pagina per qualche ragione. – gfrizzle

+0

Dopo ulteriori indagini sembra che questo non funzioni perché sto usando IE. – gfrizzle

+0

sembra funzionare in IE 10. – Mike

0

È possibile utilizzare mediatypes CSS per creare le pagine di amichevoli. Un semplice esempio è dato nella pagina seguente. Credo che ti aiuterebbe a risolvere il problema. http://martybugs.net/articles/print.cgi

+0

sto già utilizzando un supporto = foglio di "stampa" di stile per qualche altro stile di Stampa. Sto cercando di usare "page-break-inside: avoid" qui, ma sembra non avere alcun effetto. – gfrizzle

Problemi correlati