首页 > 解决方案 > 如何在php中使html表格行相等

问题描述

图片仅为示例

数据来自我的数据库,它们不是相同的数据值。而且我的html显示不好查看,有没有办法创建空td?

  <?php while($team= mysqli_fetch_assoc($team_set)){ ?>

      <td><?php echo htmlentities($team['tname']); ?></td>

  

   <?php while($grade = mysqli_fetch_assoc($grade_set)){ ?>
     <td><?php echo htmlentities($grade['points']); ?></td>
  <?php } mysqli_free_result($grade_set);  ?>


        <td><?php echo htmlentities($team['sum']); ?></td>

 <?php } mysqli_free_result($team_set);  ?> 

标签: phpcsshtml-table

解决方案


我将重新组织中间部分的结构,即您的代码的这一部分:

<?php while($grade = mysqli_fetch_assoc($grade_set)){ ?>
   <td><?php echo htmlentities($grade['points']); ?></td>
<?php } mysqli_free_result($grade_set);  ?>

在这里,每个条目都放入自己的表格单元格中,创建您在问题中描述的内容(每行中的单元格数量不同)。相反,我会将所有这些条目放入一个 单元格中:

<td class="points_cell">
  <?php while($grade = mysqli_fetch_assoc($grade_set)){ ?>
     <span class="points"><?php echo htmlentities($grade['points']); ?></span>
  <?php } mysqli_free_result($grade_set);  ?>
</td>

如您所见,我span使用类 ( .points) 将单个条目包装到标签中,并创建该类并将其应用于.points_cell包装它们的单元格。对于这两个类,您可以创建类似于以下的 CSS 规则:

.points_cell {
   white-space: nowrap;
} 
.points {
  display: inline-block;
  padding: 0 10px;
}

white-space: nowrap;on.points_cell确保.points跨度不是放在彼此下方,而是放在一行中。侧边距在.points条目之间创造了足够的距离——这个值当然可以根据需要进行调整。

borders如果您想以更明显的方式将它们分开,您还可以为这些 span 元素创建 CSS (左和右)或交替背景颜色。


推荐阅读