在HTML中重复表标题

时间:2013-10-16 08:30:28

标签: php html css

我有一个来自MySQL的大型数据集,我使用PHP显示。如果用户试图打印它,它有大约50页的数据。

使用表格和简单的PHP echo-s显示整个数据,显示表格字段中的数据。

我需要的是 - 当用户尝试打印它或在Safari(Mac)中导出为PDF时,表格标题应显示在所有页面上。怎么办呢?

由于

编辑:我已将表格标题括起来,但它不起作用。它是一个纯HTML页面,没有脚本只显示数据库中的数据。

代码

echo "<table border='1'>
<thead>
<tr>
<th></th>
<th></th>
<th></th>
<th></th>
<th colspan=13>Item Info</th>
<th colspan=4>Lot Info</th>
</tr>
<tr>
<th bgcolor='#C8E3FF'>S.No.</th>
<th bgcolor='#C8E3FF'>Party Name</th>
<th bgcolor='#C8E3FF'>Item No.</th>
<th bgcolor='#C8E3FF'>Date</th>

<th>Flower</th>

<th bgcolor='#C8E3FF'>Lot No.</th>
<th bgcolor='#C8E3FF'>Avg Wt.</th>
<th bgcolor='#C8E3FF'>Total Weight</th>
<th bgcolor='#C8E3FF'>Detail Page</th>
</tr></thead><tfoot></tfoot><tbody>";

    echo "<tr>";
    echo "<td bgcolor='#C8E3FF' rowspan=".$itemCounter.">".$sno."</td>";
    echo "<td bgcolor='#C8E3FF' rowspan=".$itemCounter.">".$row['partyName']."</td>";

    while($row2 = mysqli_fetch_array($itemquery))
    {
        $itemNo++;
        echo "<td bgcolor='#C8E3FF'>".$itemNo."</td>";
        echo "<td bgcolor='#C8E3FF'>".$row2['date']."</td>";


            //$flower = $flower + $row2['flower'];
            echo "<td>".$row2['flower']."</td>";



        echo "<td  bgcolor='#C8E3FF'>".$row2['lotno']."</td>";
        echo "<td bgcolor='#C8E3FF'>".$row2['avgwt']."</td>";
        if ($row2['totalWeight'] == 0)
        {
            echo "<td  bgcolor='#C8E3FF'> </td>";
        }
        else{
            $totalWt = $totalWt + $row2['totalWeight'];
            echo "<td  bgcolor='#C8E3FF'>".$row2['totalWeight']."</td>";    
        }

        echo "<td  bgcolor='#C8E3FF'>".$row2['detailPage']."</td>";
        echo "</tr>";
    }
    echo "<td bgcolor='#C8E3FF'><b>Total</b></td>";


    echo "<td><b>".$flower."</b></td>";



        echo "<td bgcolor='#C8E3FF'></td>";
        echo "<td bgcolor='#C8E3FF'></td>";

            echo "<td bgcolor='#C8E3FF'><b>".$totalWt."</b></td>";  

        echo "<td  bgcolor='#C8E3FF'></td>";
        echo "</tr>";
        echo "<tr></tr><tr></tr><tr></tr><tr></tr><tr></tr>";

}
echo "</tbody></table>";

1 个答案:

答案 0 :(得分:2)

据我所知,如果你正确使用表格中的THEAD部分,那么每个页面上都会重复这个标题。

http://www.w3.org/TR/html4/struct/tables.html#h-11.2.3

http://www.w3schools.com/tags/tag_thead.asp添加:

定义和用法

标记用于对HTML表格中的标题内容进行分组。

该元素与和元素一起使用,以指定表格的每个部分(页眉,正文,页脚)。

浏览器可以使用这些元素来独立于页眉和页脚滚动表体。此外,当打印跨越多个页面的大表时,这些元素可以使表格页眉和页脚打印在每页的顶部和底部。

标记必须在以下上下文中使用:作为元素的子元素,在任何元素之后,元素之后,以及元素之前的元素。