colspan
行のアイテム数に基づいて必要に応じて追加できるように、列を変更できますか?
シナリオ:
5 つのアイテムがあるとします。1 つの行/4 列が必要で、次の行には colspan="4" の 1 列が必要です
6 つのアイテムがあるとします。1 行 / 4 列、次の行、colspan="2" の 2 列が必要です。
7 つのアイテムがあるとします。1 行 / 4 列、次の行、2 列、colspan なし、+ colspan="2" の 1 列が必要です。
これが私の既存のコードです:
echo '<table width="100%" cellpadding="10" cellspacing="5">' . PHP_EOL;
$colSpan = 4;
$rows = 0;
for($i = 0; $i < $tmpCt; $i++) {
// At column 0 you create a new row <tr>
if($i % $colSpan == 0) {
$rows++;
echo "<tr>\n";
}
// if only 1 item in the row, need to add colspan="4", 2 items colspan="2" for 2 <td>'s, 3 items 1 @ colspan="2" + 2 <td>'s
echo '<td width="25%" align="center" valign="middle">' . $tmpRet[$i]['sponName'] . '</td>' . PHP_EOL;
// At column 3 you end the row </tr>
echo $i % $colSpan == 3 ? "</tr>\n" : "";
}
// Say you have 5 columns, you need to create 3 empty <td> to validate your table!
for($j = $i; $j < ($colSpan * $rows); $j++) {
echo "<td> </td>\n";
}
// Add the final <tr>
if(($colSpan * $rows) > $i) {
echo "</tr>\n";
}
echo '</table>';