2012-04-25 3 views
5

개체 목록을 반복합니다. 각 반복마다 나는 한 페이지의 내용을 담고있는 테이블을 만들고 채 웁니다.마지막 페이지가 비어있는 것을 어떻게 방지합니까?

각 테이블 다음에 CSS를 사용하여 페이지 나누기를 추가하고 있습니다.

table { page-break-after: always; } 

항상 공백 인 마지막 페이지를 얻는 것을 제외하고는 위 작업이 유용합니다. 내가 생각하기로는 페이지 나누기를 적용한 마지막 테이블 반복 때문입니다.

나는 시도했다.

table { page-break-after: always; } 
table { page-break-after: auto; } 
table { page-break-after: left; } 
table { page-break-after: right; } 

그러나 항상 빈 페이지가 표시됩니다.

공백 마지막 페이지를 만들지 않는 페이지 나누기를 삽입하는 다른 방법이 있습니까?
아니면 마지막 반복이 마지막 페이지 나누기를 삽입하지 않는지 감지하는 방법이 있을까요?

+1

적절한 CSS와 함께 첫 번째 또는 마지막 테이블에 클래스 이름을 적용 할 수 있습니까? – freefaller

답변

12

당신은이를 추가 할 수 있습니다

table:last-of-type { 
    page-break-after: auto 
} 

아니면 페이지를 만들 루비를 사용하고 어쩌면

body > *:last-child { 
    page-break-after: auto 
} 
+0

테이블에 last-of-type {page-break-after : auto}를 추가했는데 아무 효과가없는 것 같습니다. 그것으로 전혀 페이지 나누기를 만들지 않으므로 페이지가 함께 실행됩니까? – Baxter

+0

이 아닌 다른 방법으로 테이블을 구성해야합니까? – Baxter

+0

이것은'table {page-break-after : 항상}'에 추가 된 것입니까? – pbfy0

2

. 나는 깨고 깨는 다른 CSS를 만들었습니다.

#publication_no_break{ 
/* stuff here */ 
page-break-after: avoid; 
} 

#publication_break{ 
/* stuff here */ 
page-break-after: always; 
} 

는 그리고 코드에 나는 모든 내가 인쇄해야 페이지와

<% if page != total_pages %> 
< .... .... id="publication_break" > 
<% else %> 
< .......... id="publication_no_break"> 
<% end %> 

당신이 코딩을하고 어떤 언어에있는이 뭔가를 시도 할 수를 계산합니다.

관련 문제