HTML 只为 <tbody> 和 <tr> 绘制带边框的 table

HTML Draw table with borders only for <tbody> and <tr>

我有一个 HTML table 看起来像:

<table >
        <thead >
                <tr><th align="center" colspan="7" style="font-weight: bold; text-decoration: underline;">TEMP</th></tr>
                <tr><th align="right" colspan="7">In Lieu of XXXX(P)-28(L)</th></tr>
                <tr><th align="center" colspan="7">RECIEPT - HQ XYZ</th></tr>
                <tr>
                    <th align="left" colspan="6">To    : 93 SDO</th>
                    <th align="left" colspan="5">Date : ________<?php ?></th>
                    </tr>
                <tr>
                    <th align="left" colspan="6">From : 993 FPO</th>
                    <th align="left" colspan="5">Sheet No:________</th>
                </tr>
            </thead>
            <tfoot>
                <tr><td  align="center" colspan="7" style="font-weight: bold; text-decoration: underline;">TEMP</td></tr>
            </tfoot>
        <tbody border="2" cellpadding="2" >
            <tr>
                <th>First Name</th>
                <th>Last Name</th>      
                <th>Points</th>
                <th>First Name</th>
                <th>Last Name</th>      
                <th>Points</th>
                <th>First Name</th>
            </tr>
            <tr>
                <td>Jill</td>
                <td>Smith</td>      
                <td>50</td>
                <td>Jill</td>
                <td>Smith</td>      
                <td>50</td>
                <td>Smith</td>
            </tr>
            <tr>
                <td>Jill</td>
                <td>Smith</td>      
                <td>50</td>
                <td>Jill</td>
                <td>Smith</td>      
                <td>50</td>
                <td>Smith</td>
            </tr>
            <tr>
                <td>Jill</td>
                <td>Smith</td>      
                <td>50</td>
                <td>Jill</td>
                <td>Smith</td>      
                <td>50</td>
                <td>Smith</td>
            </tr>
            <tr>
                <td>Jill</td>
                <td>Smith</td>      
                <td>50</td>
                <td>Jill</td>
                <td>Smith</td>      
                <td>50</td>
                <td>Smith</td>
            </tr>

        </tbody>
    </table>

table的CSS是这样的

<style>
    table { 
            page-break-inside:auto;
            border= 0px;
          }
    tr    { page-break-inside:avoid; 
            page-break-after:auto 
            border=1px solid black;
          }
    thead { display:table-header-group;
            border=1px solid black;
          }
    tfoot { display:table-footer-group;
            border= 0px;
          }
</style>

我试图只为 <tbody><tr> 实现边界,但它没有发生。 我已经尝试将 border 属性 用于 table、theadfoot 作为 0pxcollapsed。但我无法实现。是否无法声明单个标签的边框属性,例如 tbody、tr、thead、tfoot 等

尝试 border : none; 而不是 border : 0px;

将此添加到您的 CSS 定义中:

th {
     border: 2px solid #ff0000;
}

(当然,稍后你调整大小和颜色)

但是,tbody 第一行之后的所有 td 都必须转换为 th 以显示它们周围的边框。