0

我有一个从 MYSQL 数据库中“拉出”的表,用户可以使用下拉框并保存到 MYSQL。所有这些都有效 - 但桌子不适合 DIV,看起来一团糟。有没有一个我可以有一个水平滚动条来滚动整个表格?

我怎样才能把这个表放在一个 1100x545 像素的表中......它会溢出,但它需要适合 div。我希望它水平溢出

echo "<table style=\"float:left;\" width=\"130\" border=\"0\" >";
                foreach($Data as $Item => $Value) {
            if(!is_numeric($Item) && $Item !== "UserIDHere") {
                if($i == 0) {
                    $Unit = substr($Item, 0, 2);
                    $Assignment = substr($Item, 2, 2);
                    $Task = substr($Item, 4, 2);

                    echo "<tr style=\"text-align: center\"><td colspan=\"4\"><p>".$UArr[$Unit]."</p></td></tr>";
                    echo "<tr style=\"text-align: center\"><td colspan=\"4\"><p>".$AArr[substr($Item, 2, 2)]."</p></td></tr>";
                    echo "<tr><td width=\"60\">".$TArr[$Task]."</td><td width=\"50\">".DropDown($Item, $Value)."</td></tr>";

                }
                if($Unit !== substr($Item, 0, 2)) {
                    echo "</tr>";
                    echo "</tr>";
                    echo "<table style=\"float:left;\" width=\"150\" border=\"0\" >";
                    $Unit = substr($Item, 0, 2);
                    echo "<tr style=\"text-align: center\"><td colspan=\"4\"><p>".$UArr[substr($Item, 0, 2)]."</p></td></tr>";
                }
                if($Assignment !== substr($Item, 2, 2)) {
                    $Assignment = substr($Item, 2, 2);
                    echo "<tr style=\"text-align: center\"><td colspan=\"4\"><p>".$AArr[substr($Item, 2, 2)]."</p></td></tr>";
                }
                if($Task !== substr($Item, 4, 2)) {
                    $Task = substr($Item, 4, 2);
                    echo "<tr><td width=\"60\">".$TArr[$Task]."</td><td width=\"50\">".DropDown($Item, $Value)."</td></tr>";
                }
                $i++;
            }

        }
        echo "</table>";

这个的CSS是

.full-segment
{
    width: 1100px;
    height: 545px;
    overflow: scroll;
}

我怎么做才能使溢出是水平的)所以你水平滑动而不是垂直滑动?

它看起来如何

4

1 回答 1

0

放在<div>范围之外<table>。所以你的代码应该是这样的:

echo "<div foo='bar' foo2='bar2'>
<table foo='bar' foo2='bar2'>";
//populate the table here
echo "</table></div>";

默认的 CSS 设置overflow:auto将负责其余的工作。

编辑:默认 CSS 设置不是 overflow:auto. 是overflow:visible。我的错。您需要在属性overflow:auto中显式声明。style

更新:使字段水平移动需要将它们放入相同的<tr>标签中。每个不同<tr>的标签都会在表格中产生一个新行(在新行上)。为此,您需要重新考虑您的分组以及如何放置这些<tr>标签,以及一行中需要多少个字段。不幸的是,在找到适合自己的外观之前,您必须自己进行试验。

此外,表中的表在工作时,如果您没有正确关闭它们,可能会导致很多麻烦。您可能希望确保那段代码正在执行您希望它执行的操作。

于 2012-07-22T16:50:54.740 回答