<tr> 在 <tbody> 为 display:block 时压缩
<tr> squeezed when <tbody> is display:block
我需要向我的 tbody 添加一个显示块以使我的分页符内部工作。
当我这样做时,分页符在打印时起作用,但是 table 的形状针对一个特定的 tbody 进行了修改。
html:
<div class="row section-content">
<table>
<tbody class="subsection">
<tr>
<th colspan="2">Personal infos</th>
</tr>
<tr class="check">
<td class="control-title">Is licensed</td>
<td class="check-body control-body">false</td>
</tr>
<tr class="text">
<td class="control-title">First name</td>
<td class="text-body control-body"> Gc yt?tv</td>
</tr>
<tr class="text">
<td class="control-title">Last name</td>
<td class="text-body control-body">Bhvug7y</td>
</tr>
<tr class="text">
<td class="control-title">Adress</td>
<td class="text-body control-body">Guvyb</td>
</tr>
<tr class="radioBtn">
<td class="control-title">Wants to suscribe to monthly discount</td>
<td class="radio-body control-body">No</td>
</tr>
<tr class="number">
<td class="control-title">Annual household income</td>
<td class="number-body control-body">10</td>
</tr>
</tbody>
<tbody class="subsection">
<tr>
<th colspan="2">Accomodation</th>
</tr>
<tr class="gps">
<td class="control-title">Location</td>
<td class="gps-body control-body">55.8755037, -4.2547716</td>
</tr>
<tr class="number">
<td class="control-title">Iso reference</td>
<td class="number-body control-body">15</td>
</tr>
<tr class="radioBtn">
<td class="control-title">Accomodation type</td>
<td class="radio-body control-body">House</td>
</tr>
</tbody>
</table>
</div>
之前:
]
显示块后:
我确实遇到了同样的问题,经过全面搜索后,我找到了解决问题的方法,即首先将 class 添加到 table,您不想在打印时中断 [= =11=] 现在添加 css
.unbreakable td{
width: 100% !important;
}
.unbreakable tr{
page-break-inside: avoid !important;
}
它对我很好,希望对你也有用...:) 谢谢...
在为同一个问题苦苦挣扎了几天之后,我发现使用 display:table-row-group
非常适合这种情况。
display:block
将断开元素与父元素 table 的连接,从而导致此问题。
display:table-row-group
像 <tbody>
一样渲染元素,保持 DOM 正确。
我需要向我的 tbody 添加一个显示块以使我的分页符内部工作。
当我这样做时,分页符在打印时起作用,但是 table 的形状针对一个特定的 tbody 进行了修改。
html:
<div class="row section-content">
<table>
<tbody class="subsection">
<tr>
<th colspan="2">Personal infos</th>
</tr>
<tr class="check">
<td class="control-title">Is licensed</td>
<td class="check-body control-body">false</td>
</tr>
<tr class="text">
<td class="control-title">First name</td>
<td class="text-body control-body"> Gc yt?tv</td>
</tr>
<tr class="text">
<td class="control-title">Last name</td>
<td class="text-body control-body">Bhvug7y</td>
</tr>
<tr class="text">
<td class="control-title">Adress</td>
<td class="text-body control-body">Guvyb</td>
</tr>
<tr class="radioBtn">
<td class="control-title">Wants to suscribe to monthly discount</td>
<td class="radio-body control-body">No</td>
</tr>
<tr class="number">
<td class="control-title">Annual household income</td>
<td class="number-body control-body">10</td>
</tr>
</tbody>
<tbody class="subsection">
<tr>
<th colspan="2">Accomodation</th>
</tr>
<tr class="gps">
<td class="control-title">Location</td>
<td class="gps-body control-body">55.8755037, -4.2547716</td>
</tr>
<tr class="number">
<td class="control-title">Iso reference</td>
<td class="number-body control-body">15</td>
</tr>
<tr class="radioBtn">
<td class="control-title">Accomodation type</td>
<td class="radio-body control-body">House</td>
</tr>
</tbody>
</table>
</div>
之前:
显示块后:
我确实遇到了同样的问题,经过全面搜索后,我找到了解决问题的方法,即首先将 class 添加到 table,您不想在打印时中断 [= =11=] 现在添加 css
.unbreakable td{
width: 100% !important;
}
.unbreakable tr{
page-break-inside: avoid !important;
}
它对我很好,希望对你也有用...:) 谢谢...
在为同一个问题苦苦挣扎了几天之后,我发现使用 display:table-row-group
非常适合这种情况。
display:block
将断开元素与父元素 table 的连接,从而导致此问题。
display:table-row-group
像 <tbody>
一样渲染元素,保持 DOM 正确。