2009-08-03 8 views
5

Tengo una tabla de datos HTML donde cada celda puede tener varias líneas de texto. Cuando se imprime la tabla, es posible dividir una fila de manera que algunos de los datos aparezcan en la parte inferior de la primera página y algunos aparezcan en la parte superior de la siguiente. ¿Existe un equivalente a la funcionalidad de "mantener juntos" de Word que evitará que ocurra un salto de página dentro de una fila de la tabla? Creo que esto sería un problema común, pero la única "respuesta" que pude encontrar estaba oculta en un determinado sitio web con guiones. :)¿Cómo evito que un elemento <td> aparezca en varias páginas cuando se imprime desde IE?

Actualización: Los datos se pueden visualizar utilizando IE 7, que parece no maneja la propiedad "page-break-inside" correctamente (en su caso). ¿Hay alternativas? ¿Esto es algo en lo que jQuery puede ayudar?

Respuesta

5

intento:

La forma CSS2 ambiente para hacerlo sería
td {page-break-interior: evitar; }

ver la page-break-inside definition

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

+0

Tiene sentido, pero su aplicación no parece tener ningún efecto en los resultados impresos. Todavía está rompiendo donde quiere. Incluso agregué algunas otras cosas para asegurarme de que el elemento CSS se estaba recogiendo (lo que era), pero no está afectando los saltos de página por alguna razón. – gfrizzle

+0

Tras una investigación más exhaustiva, parece que esto no funciona porque estoy usando IE. – gfrizzle

+0

Parece que funciona en IE 10. – Mike

0

Es posible utilizar mediatypes CSS para crear páginas amistosas de la impresora. Un simple ejemplo se da en la siguiente página. Creo que te ayudaría a resolver el problema. http://martybugs.net/articles/print.cgi

+0

Ya estoy usando una hoja de estilo media = "print" para otro estilo de impresión amigable. Estoy tratando de usar "page-break-inside: avoid" aquí, pero parece no tener ningún efecto. – gfrizzle

Cuestiones relacionadas