2014-09-18 1 views
1

Я не могу получить разрывы страниц в моем pdf с помощью css и принца. Вторая таблица касается первой. Что я делаю не так? Я думаю, что я, возможно, не понял, как использовать инструкции для печати в CSS, с моей точки зрения это выглядит как я делаю именно то, что инструкция говорит мне (link)Невозможно получить разрывы страниц для работы с помощью css и принца

Мой код выглядит следующим образом:

@page { size: 210mm 297mm; 
 
} 
 

 
chapter {page-break-before: always;} 
 

 
table.page{ 
 
    width:14cm; 
 
    font-family:"Times New Roman"; 
 
    font-size: 12pt; 
 
    border: 1px solid black; 
 
    text-align:justify; 
 
    padding:0; 
 
    margin:0; 
 
} 
 

 
td.number{ 
 
    width:1.8cm; 
 
    font-family:"Times New Roman" ; 
 
    font-size: 12pt; 
 
    text-align:justify; 
 
    padding:0; 
 
    margin:0; 
 
} 
 

 
td.content{ 
 
    width:12cm; 
 
    font-family:"Times New Roman"; 
 
    font-size: 12pt; 
 
    text-align:justify; 
 
    padding:0; 
 
    margin:0; 
 
}
<body> 
 
    <chapter> 
 
     <table class="page"> 
 
      <tr> 
 
       <td colspan="2"> 
 
        <h1>Title </h1> 
 

 
       </td> 
 
      </tr> 
 
      <tr> 
 
       <td class="number"> 
 
        <div>1</div> 
 
       </td> 
 
       <td class="content"> 
 
        <div>this is some text</div> 
 
       </td> 
 
      </tr> 
 
     </table> 
 
    </chapter> 
 
    <chapter> 
 
     <table class="page"> 
 
      <tr> 
 
       <td colspan="2"> 
 
        <h1>Title 2</h1> 
 

 
       </td> 
 
      </tr> 
 
      <tr> 
 
       <td class="number"> 
 
        <div>2</div> 
 
       </td> 
 
       <td class="content"> 
 
        <div>this is some more text</div> 
 
       </td> 
 
      </tr> 
 
     </table> 
 
    </chapter> 
 
</body>

ответ

1

Нашел ответ сам: глава считается пустой. Работает, если я использую элемент table class = "page", чтобы указать разрыв страницы.

0

Относится к блоку элементы только

относится к:блок -уровней элементов в нормальном потоке корневого элемента. Пользовательские агенты также могут применять его к другим элементам, таким как элементов таблицы.

Он не будет применяться к пустому <div>, который не будет генерировать поле.

Примечание: этого свойства в ходе заменяется более общим break-before. Это новое свойство также обрабатывает столбцы и разрывов областей и синтаксически совместимо с page-break-before.

Перед использованием page-break-before, проверьте, можете ли вы использовать break-before . В будущем page-break-before будет простым псевдонимом для некоторыми его значениями.

Source

Решение

можно обойти это ограничение, просто путем преобразования inline элемента в block элемент (если вы можете позволить себе сделать это).

.pagebreak { 
    display: block; 
    page-break-before: always; 
} 
+0

У принца XML еще нет свойства 'break-before' CSS. –

Смежные вопросы