对于固定高度的表,列边框不会延伸到底部

时间:2014-12-11 21:04:27

标签: html css flying-saucer

我正在尝试制作一个HTML模板,以精确匹配客户的要求。然后使用flyingsaucer将此HTML模板转换为PDF。

具体来说,我需要一个表格作为页面上的设定高度。该表必须有列,但除标题外没有行。 (嘿,不要拍我,客户要求它!)

CSS:

        #invoice-table {
            border: 1px solid darkblue;
            border-spacing: 0;
            clear: both;
            margin: 2mm 0mm;
            height: 100mm;
            width: 100%;
        }
        #invoice-table th, td { border-left: 1px solid darkblue; }
        #invoice-table th:first-child, td:first-child { border-left: none; }
        #invoice-table th { border-bottom: 1px solid darkblue; }
        #invoice-table td { vertical-align: top; font-size: 8pt; }
        th { text-align: center; font-weight: normal; }
        .amount { text-align: right; }
        .invoice_line { height: 6mm; }
        .invoice_line td, .invoice_line th { padding: 1mm; }

表格:

    <table id="invoice-table">
        <colgroup>
            <col width="35mm" />
            <col />
            <col width="20mm" />
            <col width="20mm" />
            <col width="20mm" />
        </colgroup>
        <tr class="invoice_line">
            <th>Rate Class</th>
            <th>Rate and Driver Details</th>
            <th>Item/s</th>
            <th>Rate</th>
            <th>Amount</th>
        </tr>
        <tr class="invoice_line">
            <td>Drivers</td>
            <td class="site">Charges for the provision of temporary resources (supply of driver/s)
                week ending 12th Oct 2013 for Getty Museum</td>
            <td class="amount">1</td>
            <td class="amount">&pound;341.63</td>
            <td class="amount">&pound;341.63</td>
        </tr>
        <tr class="invoice_line">
            <td>Drivers</td>
            <td class="site">Charges for the provision of temporary resources (supply of driver/s)
                week ending 12th Oct 2013 for Staples Center</td>
            <td class="amount">1</td>
            <td class="amount">&pound;330.00</td>
            <td class="amount">&pound;330.00</td>
        </tr>
        <tr>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
            <td>&nbsp;</td>
        </tr>
    </table>

这个有效!几乎...... !!!

使用飞碟R8,几乎可以产生所需的效果。但是,表格的底部有一个空白(见下面的截图)。我试图摆脱这种差距。

enter image description here

差距不会出现在浏览器上。这是一个flyingsaucer错误还是我错过了什么?或者有更好的方法来达到同样的效果吗?

1 个答案:

答案 0 :(得分:0)

一段时间前,我设法解决了这个问题。从CSS来看,解决方案似乎是设置border-collapse或box-sizing或同时设置两者。

        #invoice-table {
            border: 0.5pt solid darkblue;
            border-collapse: collapse;
            border-spacing: 0;
            box-sizing: border-box;
            clear: both;
            margin: 2mm 0mm;
            height: 100mm;
            width: 100%;
        }