我有一个提供输出的表,如此处的图像所示:https://drive.google.com/file/d/0B48p5hM0mJhVUVFmSm1Sem9jMHc/view?usp=sharing
每个条目的列数都不同,并且没有固定的列数。列数随每个查询而变化。
如何使所有列的宽度适合空间?
理想情况下,我希望列跨度能够扩展以均匀填充区域,如标题中所示。或者,我也可以处理空/空白列,其中列数小于最大值。
这是我的代码:
<table width="auto" border="0" cellpadding="4" cellspacing="1">
<tr>
<th bgcolor="#0080FF"><div align="left"><font color="#000000" face="Arial, Helvetica, sans-serif">Equipment </font></div></th>
<th bgcolor="#0080FF" colspan="100%"><div align="center"><font color="#000000" face="Arial, Helvetica, sans-serif">Problems Reported </font> </div></th>
</tr>
<?php
$t=0;
while ($t < $nume)
{
$e1=mysql_result($resulte,$t,"EQUIP");
?>
<tr>
<td bgcolor="#D7D7FF"><div align="left"><strong><font color="#000000" face="Arial, Helvetica, sans-serif"><?php if(empty($e1)) {echo 'Unlisted Equipment';} else {echo $e1;} ?></font></strong></div></td>
<?php
$queryX = "SELECT NATR, COUNT(NATR) AS COUNT FROM (
(SELECT NATR FROM main WHERE EQUIP = '$e1' AND DATE >='$x2' AND DATE <= '$x5')
UNION ALL (SELECT NATR2 AS NATR FROM main WHERE EQUIP = '$e1' AND DATE >='$x2' AND DATE <= '$x5' AND NATR2 <> '')
UNION ALL (SELECT NATR3 AS NATR FROM main WHERE EQUIP = '$e1' AND DATE>='$x2' AND DATE <= '$x5' AND NATR3 <> '')
) t GROUP BY NATR";
$resultX = mysql_query($queryX);
$rowX = mysql_fetch_array($resultX);
$numX=mysql_numrows($resultX);
$w=0;
while ($w < $numX)
{
$w1=mysql_result($resultX,$w,"NATR");
$w2=mysql_result($resultX,$w,"COUNT");
?>
<td bgcolor="#D7D7FF"><div align="left"><font color="#000000" face="Arial, Helvetica, sans-serif"><?php echo $w1; ?></font></div></td>
<td bgcolor="#D7D7FF"><div align="center"><font color="#000000" face="Arial, Helvetica, sans-serif"><?php echo $w2; ?></font></div></td>
<?php
$w++;
}
?>
</tr>
最佳答案
如果需要可变宽度的可变列号。
您可以动态应用宽度。页面总宽度为100%。
因此,以%值给出列的宽度。
假设您有5列,则宽度计算为100/5 = 20%。
希望对您有帮助!